Elfprince, I've made some optimizations to drawing the board--specifically the grid doesn't redraw each time, and it only redraws changed cells. However, it's still feeling a bit sluggish. I was hoping I could call on you to maybe check through the Step() logic and see if there's any way to improve it.
Did some work on it today. Nothing super fun, really, just some menus and stuff:


I also did a bunch of under-the-hood refactoring to make my life easier.

The menu structure is actually kind of neat, I think. Check it out in the report if you're interested.
Looks cool! Any progress, even if it's just menus, is good news to me! Very Happy
merthsoft wrote:
Elfprince, I've made some optimizations to drawing the board--specifically the grid doesn't redraw each time, and it only redraws changed cells. However, it's still feeling a bit sluggish. I was hoping I could call on you to maybe check through the Step() logic and see if there's any way to improve it.


I would convert this chunk of three conditional assignments to a single assignment from a boolean expression.
Thank, I'll check that out.

Meanwhile, I've been working on the menu. I may break this out into a library at some point, if I get the desire to learn how to do that. Here's radio buttons and checkboxes:



In the real menu, it'll be a radio button, but I switched to checkboxes for testing purposes.
That looks neat, Merth! And I'm sure others would definitely find a menu library useful Smile
Update: Getting some settings finished:
That color selector looks great, Merth! How long until we find ourselves with an on-calculator TokenIDE that uses that for tilemap and sprite editing? Wink Keep up the great work.
I've done a bunch more under-the-hood stuff with the menus and the keys. Everything works a lot better now that I've added some better debouncing and repeat-key detection. I've also added some topology explanations courtesy of elfprince:


Also, just to give an idea of what's left:
1) Fixing whatever I did to break elfprince's topology code
2) A menu for rules, including setting a custom rule
3) Saving settings to an appvar

If I'm able to get #1 (or have elfprince do it), I'll probably release a little demo before getting the rest of the features complete.
This is great, Merth! It seems to be progressing along quite fast Smile
Thanks James! I'd love some testers, so here's a current version:
http://merthsoft.com/GOL.zip

Note that rules don't work, and you can't save any settings (except temporarily), but other than that it should be functional. Controls feel wonky on CEmu but fine on hardware.

Things left:
1) Add a description in the topo section for what things mean
2) A menu for rules and setting custom rules
3) Saving settings to an appvar
As an aside: I would recommend the torus topology as a good default for any testers who are fiddling around, as the one in which gliders behave the most like they ought to in the infinite-plane.
This looks awesome! You've gotten me back in the spirit to continue work on my own cellular automation program. I began to put it off, hoping for a better GUI system than the one I had going, but I think you've given me a few neat ideas to build upon... Wink

Right now I'm rather busy with my chatbot, but in May I will see if I can finish Calcular Automation.
elfprince13 wrote:
As an aside: I would recommend the torus topology as a good default for any testers who are fiddling around, as the one in which gliders behave the most like they ought to in the infinite-plane.
Torus is, in fact, the default topology!

Hactar wrote:
This looks awesome! You gotten me back in the spirit to continue work on my own cellular automation program. I began to put it off, hoping for a better GUI system than the one I had going, but I think you've given me a few neat ideas to build upon... Wink
Great! The code is all available on bitbucket: https://bitbucket.org/merthsoft/gol-84-ce

Feel free to check out menu.h/.c if you want any of that stuff.
merthsoft wrote:
Thanks James! I'd love some testers, so here's a current version:
http://merthsoft.com/GOL.zip

Note that rules don't work, and you can't save any settings (except temporarily), but other than that it should be functional. Controls feel wonky on CEmu but fine on hardware.

Things left:
1) Add a description in the topo section for what things mean
2) A menu for rules and setting custom rules
3) Saving settings to an appvar

Cool! I'll be a tester. Smile
Another release:
- You can now select rules. Custom doesn't work yet
- Some graphics changes to the menus

Here's a demonstration of some rules:


I need to add a "random density" setting so you can make it so when you randomize it's got a lot more or less--some rules (like diamoeba) really need a denser board.

Here's the download: http://merthsoft.com/GOL.zip
Some more progress made:

You can see these cells are larger--that's now adjustable. Also, your settings are displayed.
Todo:
1) Allow custom rules
2) Save

Download: http://merthsoft.com/GOL.zip
Alright, I've implemented custom rules. Here's a gif showing off changing various settings, including setting a custom rule. You can see if you set the custom rule to an existing rule, when you go back in it'll show the existing rule:


Saving and loading is coming along now, then I just need to do the random chance settings.
Download is now available
https://www.cemetech.net/programs/index.php?mode=file&id=1445
can i download this game?
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 2 of 3
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement