Join us on Discord!
You can help CodeWalrus stay online by donating here.

E37's projects

Started by E37, December 05, 2016, 08:11:21 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

E37

Quote from: p2 on February 13, 2017, 11:43:01 AM
Yep, impressive framerate. Also it should make a fast-forward mode easier to run smooth. Great improvements! :thumbsup:
Thanks!
That is the max framerate though.  <_<
Sorry I have been a little quiet. I have been busy programming.
I am rewriting the pathfinding in assembly to make it faster.
Thanks for the interest!  :thumbsup:
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

p2

I ment if the game runs that fast in normal mode, you could sure boost the regular game process to twice the speed and still have an acceptable framerate that doesnt kill it as I assum most of the time is lost doing the rendering ^^ ;)
  • Calculators owned: ti-83+, ti-84+, ti-84+, ti-84+se, ti-84+se(te), ti-nsphire, ti-nsphire CAS, ti-nsphire CX-CAS, ti-voyage, ti-voyage, Who reads this list anyways...?
Anyway war sucks. Just bring us your food instead of missiles  :P ~ DJ Omnimaga (11.10.2016 20:21:48)
if you cant get a jframe set up, draw stuff to it, and receive input, i can only imagine how horrible your game code is _._   ~ c4ooo (14.11.2016 22:44:07)
If they pull a Harambe on me tell my family I love them ~ u/Pwntear37d (AssangeWatch /r/)
make Walrii great again ~ DJ Omnimaga (28.11.2016 23:01:31)
God invented the pc, satan the smartphone I guess ~ p4nix (16.02.2017 22:51:49)

Dream of Omnimaga

You should post screenshots of the pathfinding in action under different scenarios :) (easy, complex, long, blocked, etc)

Also in Starcraft II, when an unit can't reach a platform or island, it just stops as close as possible.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

p2

First I want to finish the graphics stuff, or at least get a little more of it done ^^
(FINALLY finishing the rest of the houses in higher definition and adding the missing tiles)  :)
Hope I can present first results today or tomorow :)
  • Calculators owned: ti-83+, ti-84+, ti-84+, ti-84+se, ti-84+se(te), ti-nsphire, ti-nsphire CAS, ti-nsphire CX-CAS, ti-voyage, ti-voyage, Who reads this list anyways...?
Anyway war sucks. Just bring us your food instead of missiles  :P ~ DJ Omnimaga (11.10.2016 20:21:48)
if you cant get a jframe set up, draw stuff to it, and receive input, i can only imagine how horrible your game code is _._   ~ c4ooo (14.11.2016 22:44:07)
If they pull a Harambe on me tell my family I love them ~ u/Pwntear37d (AssangeWatch /r/)
make Walrii great again ~ DJ Omnimaga (28.11.2016 23:01:31)
God invented the pc, satan the smartphone I guess ~ p4nix (16.02.2017 22:51:49)

E37

Quote from: p2 on February 13, 2017, 01:34:18 PM
I ment if the game runs that fast in normal mode, you could sure boost the regular game process to twice the speed and still have an acceptable framerate that doesnt kill it as I assum most of the time is lost doing the rendering ^^ ;)
That sounds like a good idea.
I am finishing up my rewrite of the pathfinder in assembly. It is going to be half the size of my Axe version  :D (Half size always means 2x as fast right?  :P)
Sorry about my lack of screenies...  :'( It is such a pain to move the program and all it's dependents to wabbitemu to show it off. (currently it is 1 app, and 2 huge data files)
I changed how units move also. (I thought how I changed it was pretty cool and wanted to share it) Instead of moving every Nth frame, it changed to following a pattern. For example 1111000011110000 is the movement for the drill walker. It fits in one 2 byte number. The 1's represent the frames that the unit moves and the 0's the ones that it doesn't. That move-pause pattern makes the walker look like it stepping!
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

E37

Well... I may have to abandon the project just due to size limitations. It is already above 26000b and a large amount of features are unimplemented.
I will need to expand my skill before going forward.
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

Dream of Omnimaga

That sucks E37, have you considered using that one utility that allows you to use up to 40 KB of code? Otherwise you might need to split more stuff into separate appvars, such replacing hardcoded material with data when possible.

However, there is a way to make Axe games that uses up to 1540 KB of code: Make the project into multiple axe programs launched from a TI-BASIC program using XCOPY (which can be found in Omnimaga download section IIRC, otherwise there's a copy in Illusiat Collection/Illusiat 13). Have the title screen, in-game menus and any cutscene become separate archived Axe sub-programs and the TI-BASIC program will do the work to launch the appropriate Axe sub-program with the help of XCOPY.8xp (which copies archived programs into prgmXTEMP000 to XTEMP016 when needed). You would need to use external data such as appvars so that the game data can be shared between each Axe program, but this technique would allow you to use up to 1.54 MB of Axe code.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

TheMachine02

Or you can use the pageswap axiom : https://www.omnimaga.org/axe-language/(tutorial)-using-the-pageswap-axiom/ which allow to store function in app.

E37

Unfortunately, neither of those ideas will work. I am already swapping pages like mad for extra memory. All of the code is too intertwined for separate programs. I suppose I could move all the menus to a different area and that might gain enough memory.
My other option is to rewrite the entire program as a multi-page app in assembly. That would fix just about every problem I can think of but would take an extremely long time.

Just so you know, here is how the memory is structured:
I have a one page app (16000b-completely full), a program (8800b-max size) and a data file (16000b-mostly empty) and a second data file (0 - 16000b depending on how much space the user has free)
I can run code everywhere but the first data file. I can run code in the second data file, but can't read from the first when I am there. The map is in the first data file so often that is useless.
Between the app and the program, I have 400 bytes of executable space left.
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

Dream of Omnimaga

  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

E37

Here is the problem, I have two data files that occupy the exact same space.
The background:
All assembly code starts at $9D95. $FFFF-$9D95 is the remaining ram that the user gets. It is what you see in the memory menu. RAM (usually) goes from $8000-$FFFF. That space between $8000-$9D95 is taken up by the OS and free ram areas. That whole area ($8000-$FFFF) is divided up into two areas with $C000 as the separator. Without Fullrene or something like it, the OS refuses to run code past $C000. In my program, I swap the are between $C000-$FFFF out between what it usually holds and and extra area. If I run code (with fullrene) past $C000, when I swap to read the data file, my code there is unusable.

I hope I was clear. It is pretty hard to explain without a bunch of other background.
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

Dream of Omnimaga

Ah I see, that sucks then. I guess your only option would be to separate menus (and if applicable, cutscenes/win/lose screens) from the main executable. I hope this project doesn't die, though, even if it means having fewer features and dumber AI.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

E37

I could finish the project today if I needed to. It wouldn't have any real challenges though. Most of the units are finished, but there aren't any enemies. (you do run out of air though)
I may end content there and work on debugging, adding the last levels and rewriting the whole thing in assembler as a multi-page app.

What do you think?
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

p2

You're. Den working on it for such a long time, I think you should really try to finish it, doing that thingy with moving the menus to an external program :) if that fails you could still go for any alternatives :)
  • Calculators owned: ti-83+, ti-84+, ti-84+, ti-84+se, ti-84+se(te), ti-nsphire, ti-nsphire CAS, ti-nsphire CX-CAS, ti-voyage, ti-voyage, Who reads this list anyways...?
Anyway war sucks. Just bring us your food instead of missiles  :P ~ DJ Omnimaga (11.10.2016 20:21:48)
if you cant get a jframe set up, draw stuff to it, and receive input, i can only imagine how horrible your game code is _._   ~ c4ooo (14.11.2016 22:44:07)
If they pull a Harambe on me tell my family I love them ~ u/Pwntear37d (AssangeWatch /r/)
make Walrii great again ~ DJ Omnimaga (28.11.2016 23:01:31)
God invented the pc, satan the smartphone I guess ~ p4nix (16.02.2017 22:51:49)

E37

"Oooooh! Wait! I have an idea!" - Rushes off to do hacky things.
I may have a way to have the program code run past 8811b anyway!  >:D
I will trade 1 lost frame every thousand or so for an extra 8000b of code. Sounds like a good deal to me!
  • Consoles, mobile devices and vintage computers owned: Ti83,Ti84!
I've never finished a project, there is always a way to improve!
What's my calc's name? Convert $37 to decimal. Look up that element in the periodic table. Then take the abbreviation of that element and you have it!
Look! A slime!    <(^.^)>

Powered by EzPortal