🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Update #4

posted in the game for project unirule
Published February 19, 2017
Advertisement

Hi everyone.

One thing I learned about JavaScript is that any function on any script can be called by just simply typing the name of the function. I didn't realise that all of my code was global :? Well the functions at least. So rather than starting all over and making everything closed with classes and modules I've decided to begin implementing more of the classes and modules in future code. When I read my code I can see little improvements in style here and there, a given script will be littered with beginner, intermediate and maybe a bit of advanced code.

O.k so these past few weeks I've been continuing to plug away with dynamic asset creation. Starting to think about the end user and their interaction with the webpage. I've tweaked the menu's a bit to make the functionality a little more intuitive. One way I'm trying to improve the user experience is being including little helper lines.

Screenshot from 2017-02-18 17-26-41.png

In the picture above you can see an outline of terrain that has been modified, more on that later. But above that you can see what looks like a sharp angle line, that one updates in real-time according to where you clicked and stretches in the direction of your mouse. Giving an impression of the orientation of your terrain manipulation relative to the globe.

Screenshot from 2017-02-18 17-27-01.png

In this picture there is a cyan line that is used to indicate the surface you are wanting to build a foundation on. red for can't be done, green to indicate flattened terrain and cyan to indicate you'll be building on top of an existing foundation.

I want this game to have the feel of a fully simulated world. When you decide to erect structures you'll have the option to choose from a list of pre-loaded assets or you can create what ever you like given the asset menu.

First you'll need to assign a plot of land you'll need to level. Once you've decided on the plot and how large you want it to be, you'll have to commission workers to the task. The earth won't just instantly change. I have yet to program it but I want the earth to slowly form, real-time, according to your specifications. Then depending on the number of man-hours going towards the work determines the speed of progress. Thus large projects such as the pyramids would be an incredible achievement in this game.

Screenshot from 2017-02-18 17-28-30.png

Once a plot of land has been molded you can then begin to sculpt your structure, rather than seeing the finished product you see what looks like a 3D blueprint, and you only see the blueprint when you are in the asset creation menu. You can check out that style in the pictures above.

Once the construction of a structure has been commissioned, again, the erecting of the structure will be real-time and according to man-hours being contributed. If you make something of stone, the workers must transport the stone from a quarry. If you make a structure of metal, it must be mined and processed first.

This game will involve developing a local economy to help aid in the development of resources which you can then in turn acquire to build world wonders or conquer your enemies.

Screenshot from 2017-02-18 17-26-04.png

I've improved the speed and efficiency of my path algorithm. It can now identify up to 600 random paths between any two coordinates on the globe, or just over 250 negated paths in 1000 milliseconds. This is more than fast enough to simulate ten thousand AI.

Screenshot from 2017-02-18 17-27-40.png

and finally, I've updated my path algorithm and beginning to incorporate dynamic assets into it. The picture above shows a path drawn, white line running over the box. I want the path alg to be able to encounter any jumble of overlapping assets and identify the topmost path in a timely fashion. Of course all of this code is being written with scale-ability in mind so that when the day comes I can flick the switch and very quickly write a few algs to generate a simulated world with trees, animals and people and then I can start making a game :D

Previous Entry Z-model
3 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement