Sunday, 15 December 2013

Cestarian Games

7 hours of sleep :/

Almost but not quite.

As i preheated the oven for my pizza (breakfast) I started today checking out my new idea for company name, i.e. Cestarian Games instead of Amodos Game Studios...

It looks so much better!

Kind of unfortunate that it's the human homeland though... But Cestaria is in my opinion the coolest continent name i ever came up with :)

Next i watched some anime! I guess it's just one of those time periods where Anime > Games :/

But i can't help that sometimes i feel like watching anime and other times i feel like playing games. Also watching anime while i eat is the standard =P

Hell would probably freeze over before i'd eat at a dinner table if i could be watching something while eating instead.

So after 2 hours of that....

I've been thinking about skill modifiers... and... i always come down to the same result which is: (Attribute / 2)

Leaving every skill's max level (that is with bonuses from modifiers) at 150. But max "base" at 100.

Before i do that so hastily though i'll check how others do it... I found nothing sensible... well, whatever i'll just do it like i envisioned it for now. It's good enough.

So i wrote that down in articy...

I see that this probably isn't going to work out in the end, but it's enough for now.

Next step is asking my processor if my maths makes logics...

My dormant programming skills, wake the fuck up now!

Ok now Ren'Py, i need to make a menu... a big menu... with lots of buttons... and variables displayed... :I this might be tough, but it's all for science!!

Argh, i don't know how to make a menu like what i have in mind with ren'pys code!!! D:

I'm thinking i should write this code down, and then do my best to beautify it... I could use microsoft's WPF thing for this as i am familiar with it, but i'm too lazy to install visual studio, and besides i'll need to know how to do this in Ren'Py sooner or later (probably by the time i get to game nr. 2)

Surely this has been done before though... I'll just look at the forums for a while...

Ok, maybe i should write this up in raw python first, since i'm more familiar with that than Ren'Py and it should be relatively easy to port over.

So i climbed into bed and thought hard about how exactly to do this, since there are no independent values, i've got attributes which depend on the PL which depends on the Sub-Level(s) which depend on the skills which depend on the attributes and (occasionally) affect/depend on the stats which depend on the attributes problem being that there's no one route through this at the high level unless i change the stats to depend only on the attributes... but even if i did that very few skills (but still some skills) depend on stats! and skills are essentially the first thing in the order leading up to evreything else but they depend on the fouth value (attributes...)

Why'd i have to make this so big and unwieldy? oh well, challenge never hurt anybody. While i was in bed i thought of one cool thing i could do, and that is to store the attributes in a list ([1,2,3,4,5,6,7,8,9]) this way i can keep all of ther "base" values in one command. Taking it even further i could use their modifiers (buffs and stuff like that) in another list rather than making a unique variable for all of them, but when it comes to the total value of each attribute i think i should devote one variable to each to make it easier (faster) to use that as a modifier (then i won't have to reference to a list when pointing towards attributes, usually.)

Yes, that's good... for the attributes anyways.... but skills and stats are way too big to do them this way (they go up to like 30 and 40 values each)... D:

I'll make this work one way or another, but when i'm done with it i'll find a better way to do it (shorten and beautify it until it's as few lines as possible). I'm thinking i'll need to learn more about classes, functions and maybe even dictionaries.....

dictionaries...

I can use dictionaries for the skills and stats :O right?! That's brilliant! that's perfect!! this solves like... all of my problems!!! dictionaries are wonderful, i could also use it for the "total" value of the attributes. Since dictionaries are essentially a list with variables instead of values.

I also found out that there's no sample code for this kind of work in Ren'Py forums, when i'm done with this i might donate it to the cookbook, but i'll probably convert it into an "rpg leveling system framework" rather than my full system so it'll be easier for others to adopt the code into their own, well..

I spent the rest of my day scratching my head over this and allow myself the luxury of doing so since i don't have any deadlines yet :3

Update: Although i didn't get much further than this with making the code for the leveling system, i did get the code for making the menus! i just asked nicely on the forums and i got a wonderful sample code :)

Update2: I did get a little further after all. I figure that a relatively safe way is to define all the variables (stats, attributes and skills) at their base values (usually 0, racial and 1) first, then after that add modifier code to them and then finally define a "final" or "total" amount for everything which will combine the base value with the modifier value. this isn't perfect(for example HP needs a third modifier for damage taken which if it reaches high enough can kill the player) but it's a start. Before i get started on it i want to look further into python's class system to see if i can possibly make use of that in this whole thing. In other words i'm ready to actually work on this tomorrow instead of just thinking about it.

No comments:

Post a Comment