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.

Dream of Omnimaga

Ooh I like the premise and hazards ideas. Also nice screenshot :)
  • 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

It's been a little while since I last posted.
Here's what's been accomplished:
Since the game can get pretty long (over two hours on longer levels) I added a fast forward option. It is nothing more than frameskip but it works.
I redid the worker's ai. It is now much easier to control.
Press Alpha to view a unit description.
Cut off another 1000 bytes from the units.
Added Rock Monsters (currently don't do anything)
Finalized the new units.
Did some general bugfixes.
Greatly improved the driller and clearer ai.
Did some fixes to the menu to make it much faster.

Still todo:
Finish rock monsters and giant slugs
Add level descriptions
Add the remaining levels
Add unit descriptions
Redo the level selection screen
Compress the pathfinding result some more?


I am worried that the game is a little boring right now. Hopefully new hazards will liven things up a little.
  • 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

your post looks like a poem O.O

yay, nice update, especially the fast forward and monsters ^.^
Really nice update man!!  :thumbsup:
  • 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

I am working on redoing the internal structure of the game. I have reduced the total number of tiles but have increased the complexity of the world. There are 20 tiles currently. However, there are 10 buildings, 8 walls, 12 passable tiles, and 5 more tiles have special variants. Want to guess how I did it? (each tile is one byte and no byte has a value above 20)
There is also a load of new things I am adding (and have added): multi-tile buildings, collapsing walls, units can work together to drill walls, animated rubble clearing, eroding lava, new possibilities for maps (like the level can start with units already out on the field), smooth scrolling, the ability to drag-select, the ability to select tiles, some buildings now require power to work and roads now light up when they are powered, some new walls, and several more units.
Currently the framerate is 20x what is was before, but I'll see how long that lasts.
  • 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

Regarding the 2 hours per game, you might definitively want to fix that, as many people might indeed get bored. Maybe put it in fast forward mode all the time or change the game mechanics so that games don't last more than an hour (even 40 minutes for a Starcraft II game is considered long, but not uncommon). Just make sure that if you increase the speed that it won't get impossible to win, though. Maybe have speed settings like in Starcraft? (so novice players can take their time in early levels)

Good to see progress by the way :)
  • 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

Quote from: DJ Omnimaga on February 03, 2017, 01:06:11 AM
Regarding the 2 hours per game, you might definitively want to fix that, as many people might indeed get bored. Maybe put it in fast forward mode all the time or change the game mechanics so that games don't last more than an hour (even 40 minutes for a Starcraft II game is considered long, but not uncommon). Just make sure that if you increase the speed that it won't get impossible to win, though. Maybe have speed settings like in Starcraft? (so novice players can take their time in early levels)

Good to see progress by the way :)

I definitely agree.
I am really thinking about making it real time again instead of turn based. That would make the average level closer to 30 minutes. The only problem is that there is a .5-1 second pause where the game freezes when a unit pathfinds. (It is much more noticeable for longer distances and almost unnoticeable for less than 5 tiles) I am working on optimizing that code as much as possible, but it may have to be accepted as-is.

Since the pathfinding is generally pretty simple, I may have the units try to just head in the general direction, and essentially create the path as they go along. (and using the normal algorithm if they get stuck) That would have no lag and take up less space in storage - but the path would be less optimized.  :-\
  • 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 guess the paths aren't that long anyways so a little less optimised paths wouldn't be that bad. Also I like the idea of making it realtime :)

Maybe even 2 different modes, one realtime and one rounds-based? :)

As always: nice update ;D
  • 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

I will definitely add the different modes. I'm dropping 83+ support. It really needed 15MHz mode to function in the first place, and I am mucking around with page swapping (using pages the 83+ doesn't have). It is going together well so far.
Here are my options for pathfinding: I need to pick 2, one main one and one as a backup (slower) for when the first (faster) fails.
AStar1: the one I am currently using. It always finds a path if possible. It is the slowest.
AStar2: A slight modification of AStar1 it does less searching and is decently faster, but it takes longer if it runs into a dead end. (1 in 10 cases)
AStar3: Quite a bit faster. It fails when it hits a dead end. (about 1 in 10 cases)
AStar4: Basically instant. It fails when the best path takes any serious turns. (about 1 in 3 cases)
Any opinions on which two?
  • 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

option 2: speed losses are acceptable, but stuck or lost mobs are terible D:
  • 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 07, 2017, 09:56:13 AM
option 2: speed losses are acceptable, but stuck or lost mobs are terible D:
I am using 2 different ones. One can fail (because the backup will pick up)
  • 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!    <(^.^)>

WholeWheatBagels

Quote from: E37 on February 07, 2017, 12:31:16 AM
AStar3: Quite a bit faster. It fails when it hits a dead end. (about 1 in 10 cases)

Fails as in how?

I'd say A*2 then A*1, but I'd go with A*3 as second if failing doesn't like crash the whole program or something.
Living in another world to you.



Also in case you were wondering Frankie did go to Hollywood

Dream of Omnimaga

I would go with 2 and 3, whichever order is the fastest. 4 is a bit too much like Warcraft II where pathfinding is almost non-existent, but 1 might be overkill for a calc, plus in Starcraft I was kinda annoyed when some units kept moving back and forth forever because they couldn't find the entrance to something.
  • 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

Quote from: DJ Omnimaga on February 07, 2017, 11:53:53 PM
I would go with 2 and 3, whichever order is the fastest. 4 is a bit too much like Warcraft II where pathfinding is almost non-existent, but 1 might be overkill for a calc, plus in Starcraft I was kinda annoyed when some units kept moving back and forth forever because they couldn't find the entrance to something.
The pathfinding will go like this: first it will try the fast algorithm which can fail. If it fails, It must start all over with the algorithm that is guaranteed to succeed. The units will always find a path to the target (if it exists)
I have finished with most of the gutting of the internals. The framerate is definitely faster. (1000 frames in 23 seconds = 43.5 fps!)
I have dropped 83+ support. It already needed 15MHz mode to have a decent framerate, so it was basically unplayable on an 83+ anyway.
The game is back to real-time again!
I have seen some of the weirdest bugs... I had a building that was bugged. It didn't appear to affect anything. When I 'fixed' it though, it crashed!  :-\
There were plenty of derp moments also. I figured out that the code doesn't work if you set the data pointers to 0!  O.O You can't return if you have overwritten where it stores the return address! In order for code to work, it can't be commented out! You apparently can't find a file if the VAT doesn't exist!

There is something about Wednesdays... I always get more done on Wednesdays than two other days... even though I spend the same amount of time each day.  ???

I promise there will be screenies soonish.
  • 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

Wow, 43.5 FPS is absolutely impressive. O.O. Good luck squashing those bugs
  • 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

Yep, impressive framerate. Also it should make a fast-forward mode easier to run smooth. Great improvements! :thumbsup:
  • 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)

Powered by EzPortal