Pages

Wednesday, 8 January 2014

Huff puff

Last night before i went to bed i ran into my first bug. So that's how they happen.

My code had relied on shared variables because of the hierarchy system. (i.e. anything i need to share between classes must be "shared") this was all good and fine if i was using normal variables. But if i composited  in another class (say... Offense = Offense() ) it would also be shared between instances.

anyways, i asked on stackoverflow and got pointed at the super command. Solved my problem.

That said, i decided to google around a bit and try to find code for an item system, just because that's the simplest thing i'm trying atm.

I found something :)

Straightforward enough. But i don't need that just yet, i need the perks and magic first so i'll google that.

eh.. found this nothing i can use just yet. . . .

D:

Seems like i'm going to have to proceed mostly by myself, the item code was useful though.

Oh right i found an open source game called ardentryst, i'll see how they did it.

You know, i've been watching fate/zero, and by episode 12 i thought it gets really interesting (Funny, it got interesting to mei at the same time as it got interesting to Archer.) the first season is just a massive chunk of character development and introductions, it seems like season 2 will be the "showdown" after the buildup of the first. Unlike Game of Thrones' endless, drawn out political nonsense it seems like in this anime the drawn out introductions, the "build up" is actually going to be worth something. Interesting, i as an aspiring (visual novel) writer cannot allow this knowledge to go to waste, if there's any example of how to do a slow-paced build up, it's this. But there's something about it.... I realized what it is, i realized what is bothering me about the series.

There's not enough going on in the background. Everything is "too" well planned. So far there have been no real sneak attacks, i remember a moment where "Rider" and his master got attacked by "Assassin" out of nowhere. That was the only "surprise attack" moment i've seen, that was the only scene i saw that said "This character is in danger, even if he is just going through a character development process". The only... risk sign, i find it hard to put it into words, but basically what i mean is that it needs more of these moments where something could go wrong for the character being followed.

The structure of this story also interests me, there's no protgaonist, the viewer can actually pick and choose who is his favorite character and that can become his protagonist. Or he can embrace the fact that there is no protagonist (as i have) and like all of the characters except the handful that he must hate (like the Vampire guy).

It lead to an interesting idea for me. I've said a couple of times that i want the final game i'm making to have a handful (4 or so) of main storylines, i mean full blown main storylines that could take hours of gameplay to finish. But this lead me to stop and think for a moment. What if i make a game where you can pick from a list of characters and follow the same story from a different angle? This has been done in visual novels before (fate/stay night probably did it, i'll have to play it and check) but there's something so cool about it. You could play as one character and fight all the others to the death, but then in your next playthrough play another character and fight the character you played and loved to the death and maybe regret killing him. Also you'll begin to doubt who is really bad and who is really good.

It's so easy to place two good characters as the leaders of opposite sides, rivaling factions. Both are good guys, fighting for a good cause, but their interests don't match and they end up trying to kill each other for their own just reasons.

Now, i was thinking about guilds (fighters, mages, thieves, etc) and i thought well... Knowing me, i'd like to have all these guilds lead by females, Thieves because it's already been decided who is it's leader, Mages because it makes sense, and Fighters because "fuck the police". However, that isn't really cool and i should try to have a male leader in at least one of the guilds. So i thought "one person is not enough to run a company. They need other people" and well... here i thought, guild leaders will come in pairs..

Thieves guild will be a lesbian couple in control, one main leader and one extra leader (first and second in command basically) there are no established rules about this guilds leadership yet. But basically it just has one leader and that leaders assistant which is capable of filling in for the leader whenever needed.

Mages guild will be set up to have two leaders from the start, one female and one male. There must always be two leaders of opposite genders (they don't have to be couples) that solves that. So basically it has two guild masters of equal power instead of just one. There is a rule against couples being together as guild masters because after all.. couples can count as one entity and we wouldn't want one entity ruling over our mages guild now would we?

Fighters guild will have a straight couple in control, just like with the thieves guild the leadership rules haven't been established, they're both relatively new guilds whereas the mages guild is ancient. But it seems to be headed towards a similar system as the mages guild, the woman (fuck the police) is the military leader, the man (fuck the police again) is the community leader. Meaning the woman is in command during any combat situation, the man is in control during any community situation (so if the faction is at war, the woman is boss, if the faction is doing negotiations, the man is boss, the man handles recruitment, the woman handles training, and to get promoted you must meet both community and combat standards set by the two)

Isn't that a decent system? certainly beats

Basically i'm thinking Thieves guild will be the communists, mages guild will be the democracy and fighters guild will be the monarchy. <- or something along those lines.

I'm tempted to drop my RPG base (which used to be just a leveling system base) work in favor of picking up design and lorewriting again.

Should i?
Should i just take a break? "Quit while you're ahead" or "Pause while it's still working"

You know what... fuck it. Implementing magic, items and perks pretty much means i need to design them first... right?
right?
yes.


So, priority changed!

Design!:
Magic
Combat Abilities
Perks
Items

(in that order)

Combat abilities new to you? maybe, it's what's meant to offer variety to the non-mage players so it can compete with magic in fun. Combat abilities will not be as many as spells (of course not) but i need to construct them so that they scale better than magic (spells strength will always be limited by it's power level of 0-4, whereas combat abilities don't have a power level, what they will have instead is to be useful in different situations (for example, backstab is only good if you're behind your opponent, which means you need to have snuck up on it before the fight was initiated. You only get one backstab unless your opponent runs or something. Flying kick is powerful but can only be used over a distance, and also like backstab usually only once. Roundhouse kick is strong against unarmored opponents but weak against armored ones, etc.)

And of course, combat abilities deplete stamina as a resource rather than mana, but theres a chance some of them will rely on mana (for example, Lightning Sword: Special Attack: Lightning Strike (which would then be a lightning strike spell but costs only 75% or something of the mana that spell alone would have cost for a caster, then there will be wands and staff which would further reduce the mana cost since they're less viable as combat weapons than a sword, etc)


... Hours later...
It has begun, i'm using the new features of Articy Draft 2.X over my old 1.X and to do that i (naturally) have to do a lot of work agian, for example i want to have global variables for all of my attributes and stats and perks, etc, so i need to create them. I've created them and then i realized that i want my leveling system to be in the Entity system of the game rather than the flow (flow was just temporary so i could visually see what my leveling system was like... until i'd find a better way to do it, which i now have. The entity system.)

I also improved some modifiers and the code i have been working on a little (i added a name variable, and two separate classes for NPCs and the PC)

Apart from a lot of detail work like that which makes my future work easier, i haven't done much, i created a few perks... In other words, i've been working all day pretty much apart from a few short breaks. We'll see what the rest of my day will be like.

Fate/Zero is so magnificent... I just noticed another wonder about it, the characters. The characters are more than just good, they're all extremely different, so different it's hard to believe they were all made by one person. The personalities are too good... the most villainous characters are actually evil, and they're evil in nature. They didn't become evil but were born evil and yet they have reasons. Their absurd justification and reasoning for their evil ways is so insane yet so believable that even i saw the world from a different angle for a moment when one of these guys spoke about what he thinks of god. How he thinks god exists and loves humans, loves the world and everything in it *including* the violence, blood, gore, rape, torture, despair... and he loves them just as much as he loves martyrs and people who struggle for their own goals or sense of justice. It made sense to me, the person who wrote that dialogue just showed me the only way that god could possibly exist. I am moved.

But thats not it either, like i said the characters are so different it's hard to believe that one person wrote them, Rider is the most open minded person ever and yet has so strong ideals. Archer is more of an egomaniac than Smaug, but despite his excessive self-righteousness and glorifications he still manages to be elegant. I.e. he's that cocky noble that everyone hates in all the movies/games/stories, but unlike the standard stereotype of that character he is not pathetic, he's strong, but pompous. Characters like that aren't common. Basically none of the characters have the same personality. None of the characters have the same goals (except for the villainous Caster and his Master maybe). Everyone is so different and everyone has such a big background story that the world really feels alive... it feels "real"

Just now i thought about how that is possible to do for one person, i was pretty sure i can't do that out of the blue... And i think i guessed it. Most of these characters are re-incarnations of real history characters (but anime versions). What i'm guessing is that the author of the story and these characters read the history books for the originals, formed his own image of what this person would really be like (both in real life and as an anime character) and then created his own version of that character in his own story.

I'm thinking that might have been the goal with the story, to pit historical figures against each other to see who would win, how cool is that right?

I could do the same, i could create my own Alucard(Hellsing), Guts(Berserk) and Lelouch(Code Geass) and have them fight to the death an a big battlefield. Alucard and Guts are both one man armies but useless in strategy, whereas Lelouch is a master strategist but can't do anything without an army of his own.

I could recreate these characters as my own personal versions of them, slap a new name on them and make a REALLY interesting story out of it.

What a great idea, i think i haven't seen this method recommended in any "writers guides" (or the few i've read) probably because it's frowned upon to mimic other peoples work. But i'll call it inspiration rather than mimicry, after all even if the characters are only partially original (they're based on certain characters but aren't the same as these characters, hence inspiration) the story would have to be original. Or well, it wouldn't (could just take battle royale's story and call it a day) but i personally would never be satisfied with my story if it didn't come from my own heart, soul or mind (take your pick.)

Now, i'm looking at ardentryst (not the code, just the game itself) to see what i can do.
I can hear it uses a remix of a track from FF7, that is NOT cool. Just saying.

(Feature = How i can use)
Intro Text = Credits (Funny note: the code for this is called "text_intro", just as i thought when i saw it)
Item Equipment System = Code (Read Code to see how they did it)
Platforming = Minigame (Possibility!)
Top-down 2D-Arena/FF7 type World Map = Minigame (Or traveling)
Animations = Interesting Ideas on how to handle them.

Thats it. now just to find the code for these things

Intro Text = game.py -> class text_intro && play_level.py -> def level_intro
Item Equipment System = items.db -> item.py
Magic = magic.py (I can learn from this pretty much the same stuff as from the item system)
Platforming = play_level.py -> def ground_at && def playlevel(?)  && class Character
AI = enemyai.py
2D-Arena = ardentryst.py(?)
Animations = ?

I'll have to check through this code at a later date right now i'm too tired and it's too early for me to be thinking about much of it.

What's good news? well i always wanted to make my game at least a little bit moddable.

I think i can make it possible to infinitely add more of certain things (like player avatar choices, face and hair images, etc)  and make it possible to override original images (so if someone wants to make a texture pack they can go right ahead, i'd just have to provide a "testing" kit and info on the folder structure so people know what files to add in order to replace the things they want to.)

I'm thinking i can also have limited support for adding new items, spells, abilities and perks if i rely on the things i am going to be learning from ardentryst's code.

Theres a chance i'll also allow for custom NPCs to be created and placed into certain leveled lists (for example "brothel customers" list or "underwater monster" list)

Basically, the good news is that the game will be moddable! (And here i had lost hope for that ever happening) the question is "how much" moddable. I'm hoping to do all of the above + the ability to add new custom sex scenes and then i'd be satisfied.

Limited moddability, i.e. you can edit everything that isn't code. and you can add new things where the code reads external database files (like monster and item lists)

I could simply place the code for the sex scenes into an external file like with items and leveled monsters and the like. and make it easy for the player to add custom sex scenes of their own to the game. Actually i think that'd offer some replayability for myself if people would do that. Since that'd mean people would add content to my game that i could enjoy playing so it wouldn't just be the game i made.

Urgh, i need food. I will find it, and i will eat it!

I actually wanted to make a cauliflower pizza(yes, it can be done. Don't ask), but it takes too long so i decided to settle with just bread with egg salad and ham.

Urgh, i want a pizza :(

I should also be making more of that white tea of mine before it gets old (already is kinda old, i should finish it before the end of january really) tomorrow. Tomorrow i must make white tea, although it is knid of teatime right now. If i wasn't so pre-occupied and absent minded i'd brew some (it takes precision and skill to brew it right, which i only just barely have, i've only done this twice.)

White tea is rare and expensive, it'd be quite the waste if i'd let it go to waste.

Now, what to do now...

Rest of the day off?
Perks?
Magic?
Combat Abilities?

i've outlined the perk system already, the rest of it is creating and naming all of the over 300 perks... 5 at a time (except for the 8 times where it's 9, not 5 and the one time it's 4)

Seems like it'll be time consuming due to the quantity but relatively easy if i put my mind to it.

I think before i do perks i want to outline the magic system.

I've got 4 schools of magic for 2 attributes (that's 8 total). I'm scratching my awesome idea of limiting the player to 2 schools at a time until a school is mastered, it's an unnecessary complication for me as a programmer. And an unwanted inconvenience for the player probably. It's better off not in the game, let the player specialize if he wants to.

Now, i've got 5 levels of magic (0-4)

8 * 5 = 40

This means at least 40 spells. But i think i should limit quantity of spells to attributes rather than the individual schools, for example destruction obviously needs more variety of spells than conjuration or illusion do. Same with alteration. So. lets say... 4 spells per level.

that's 160 spells total, making 75 spells for the two different caster archetypes.

so i could divide it like so (number is spells per level)
Destruction: 6
Conjuration: 2
Illusion: 2
Alteration: 6

Restoration: 5
Mental: 5
Summoning: 3
Shapeshifting: 3

I remember i said something about different types of spells, like "Nuke, Balanced, Over-Time" for destruction and whatnot.

That's a complication i really do not need to have. I think i can use the perk system as a substitute for it. For example when you reach a certain level in a magic school, you get to choose to specialize in "Nuke", "Balanced" or "Over Time" damage effects. Selecting one of those is basically

"Nuke" perk would give extra damage but higher mana cost
"Balanced" perk would keep things as they are and allow you to continue in the perk tree
"Over Time" perk would keep the mana cost the same, increase the total damage output but make the damage happen over time. Meaning a spell that dealt say 100 direct damage would now deal 150 damage over 3 rounds (50 + 50 + 50), an extra 50% damage (this is an extreme example, i'm sure i wouldn't increase damage output by 50% for no mana cost)

Doing that simplifies the game both for me as a programmer and the player i would imagine. It means i have to make 160 spells instead of 480 spells...

This is simple with destruction since all the spells are the same (i.e. they do damage) but what about... Conjuration. Where it means "conjure items" or "elementals" or "undead"(necromancy) i think i could simply do the same here in fact, every level grants elementals of all types and undead spell for all types. Same with an item spell of most types (perhaps i would have some uniques in that department though) and then the player specializes in "Necromancer" "Elementalist" or "Conjurer" which grants bonuses to one of the 3 conjuring spell archetypes (like reduced mana cost or something) but that's only 1 out of the 5 perks i'll need to have for these things.

Now looking back, maybe having limited spells per level per school isn't such a good idea, especially when it comes to conjuration since there are different kinds of conjuration (after all) ok, now i'm certain. I need to make the magic system, or at least make it's outlines as i have the perks system and skills system.

I created folders for the magic entities in Articy, and how (god damn) convenient that if sorted alphabetically per school, they're still all in line depending on which attribute they use (i.e. the 4 int based come first, then the 4 will based)

Cool right? at least it's convenient since it removes the temptation of creating two extra folders to manually sort them.

Time for an energy drink and a short break with fate/zero... A little energy drink never harmed anyone! (that statement is false, and this is my third today). I like the openings and endings of these series, they're Jrock rather than jpop, or as i'd rather call it "Pop rock". I was dead on when i was saying the action would start full time in season 2. Just the first episode is epic. Now, sadly... back to work.

I'm creating the spells, i figured it'd be pretty basic to name them "Spell_Lvl" like "Fire_4" then have the different names "Nuke: Inferno" "Balance: Fuel Explosion" "Time: Black Napalm" (Inferno can kill armies in one shot, Fuel Explosion does the same, but on a smaller scale with more efficiency, black napalm works at the same scale as fuel explosion but with even higher efficiency and of course, over time. But the spell is so powerful that the first tick of the "time" version of the spell is going to kill anything that's less than level 100, lets say... damage wise... i've established that max (base) hp will be about 4050 at level 100 then after that it will be bonuses from buffs and items. so black napalm could do 3000 per tick for 3 ticks (9000 dmg) fuel explosion could do 8000 dmg and inferno could do 9500 dmg in the area of the other spells and 7000 damage with fallout over a larger area (meaning more targets). These spells are the equivalent of weapons of mass destruction and can not be compared to the level 3 spells which would at most do 40% of that damage. these are "god" level spells that require the magic school level to be at 100 to be usable, and they're not easy to come by.)

I wanted Yrja to have one of these spells, i think i'll have the earth version of the balance spell and name it "Compress" which can 1 shot almost any target by wrapping them in cone (made out of rock) and then shrinking it down to the size of a pebble. Nothing should remain but blood.

Oh right i remember, nuke was supposed to not only be stronger than balance but also AoE.

so
Nuke = Overkill
Balance = Effective/Direct
Over Time = Efficient

The usefulness of "god" level destruction spells will be pretty limited, since they can in one shot kill almost anything and killing is discouraged in the game. You would basically only use it against opponents you intend to (literally) turn to dust, because they're so powerful you won't even be able to loot the targets after they're dead. There won't be anything left of them after such a powerful spell.

Anyways...

56 Destruction spells each with 3 varieties. (168 out of the 240 originally planned. Much more doable than 240 (lol) and much less complicated for the player to select 34 spells instead of 168)

Now i just need to name them all. I already did that (Partially) on the wiki, now that i have 72 less spells to worry about, this won't be (as) hard.

Ok, tier 4...

Fire: Done (Inferno, Fuel Explosion, Lava Flood)
Air: Done (Pyroclastic Flow, Absolute Zero, Cyanide)
Earth: Done(?, ?, ?)
Water: Done (Freeze, Boiling Tsunami, Acid Tsunami)
Electric: (Lightning Storm, Lightning Strike,

Tier 3:
Water: Done(Icicle Volley, Tsunami, Boil Blood)

Tier 2:
Water: Partial(?, Waterfall, Acid Shower)

Tier 1:
Water: Partial(?, Waterjet, Poison)

Tier0:
Water: Done(Icicles, Splash, Heat Blood)

Oh wow, Fate/Zero does not cease to impress. A character i had up till now thought of a pretty nice guy commited one of the more evil acts i've seen in the anime, even if it was towards people that deserved it... it was sickening to watch. I love how as i've aged i've begun to see the wrongness of media more and more clearly, Anime has helped with clarifying just how wrong media can be, the heartless murders justified as "glory" and the torture justified as "necessity"... Media is sick, it's revolting, it's disgusting and what i'm making here is not much better, but the difference between what i'm building and what's mainstream is that i will not try to hide cruelty and evil as "necessity" or something "glorious" you think it's glorious to walk into a bar and go on a killing spree? well in my game you'll be able to walk into a bar and cast a god-level spell killing everyone in it, but there won't be anything glorious about it, if anything you'll regret it.

You'd be punished for it with "titles" for the remainder of your gameplay which makes almost all characters fear you, and many hate you. You wouldn't be welcome in any major city after something like that. Assassins would be sent to kill you, and most of the world would reject you as a monster (that's how the world works) no one would ever try to capture you alive, everyone who would be out for you would be out to kill you, and people who liked you, might even have been in a relationship with you would start to hate you, and try to hide that they ever even knew you.

Or something along those lines.

If you're in a battle (faction vs faction or something) and you use such a spell to annihilate everything that breathes on the wrong side of the battlefield, you won't be hated by as-many and instead of fear you may earn respect from some. But there will still be people who loved people you just vaporized who will hate you for it, and try to kill you for it. I'd also probably give the player a moral choice to ask him how he felt about what he just did If he didn't feel so bad about it he'd get a massive "evil" debuff which gives you probably more "evil" points than any other act you can do in the game. If he'd decide to lose sleep over the horror he had just unleashed then he'd get half or a quarter of that evil debuff.

In other words, my games will heavily discourage murder and brutal violence (sexual and otherwise) but they will actually allow you to perform these acts if you so choose. Penalize you for them, sure... I'll try to penalize you for evil acts in a similar way as you would be in real life.

If you rape someone you're going to regret the damage you've done to them for the rest of or at least a good chunk of your life.

If you don't regret it then you're probably going to do it again and eventually get bitten so hard in the ass for it you won't walk again for years (not outside of a prison cell anyways. unless you got murdered...)

Even if you can get away with it like some people do, most people who know about it (and people will know about it) will avoid you like you were cancer, hire assassins to kill you, or try to kill you themselves.

You'll always be punished in some way for commiting cruel or heartless acts without thinking, and if the game will turn out as well as i hoped, there's a good chance that a lot of players won't like it because they're not used to being punished for killing monsters, or playing through a mechanic. I will very intentionally not include an option to disable or reduce these punishments.

What i want to do, rather than limiting the player to a certain playstyle, is to encourage certain styles and discourage others. Nothing new, but... I'm not sure about how much of my game will be new and how much of it will be old . One thing that will be new is the mixture of multiple genres done via mini-games.Since i'll have so many mini-games, i might make mini-campaigns centered around a certain minigame. So a player can play as a slave trainer or faction leader from the start and not worry about the rest of the game, whereas a normal gameplay will be fairly sandboxy (apart from the quests) where you get to pick and choose which minigames to play and which ones to avoid. There will be tons of content where the only attribute you need will be manipulation and the skills of the social tree. I'm thinking i want to make at least one of the several main quests to be playable without combat. And losing is usually an option except for against very specific types of monsters (the types that are extra evil, like some demons, and monsters that are so much stronger than you that when they defeat you they also kill you (overkill).

Oh and to justify the power of some of the god-tier spells (like Pyroclastic Flow) the god tier spells are not limited to one element. For example, a fuel explosion would require fire and fuel, fuel commonly being liquid meaning water.

Well, 'ill call it a day now. I worked for nearly 20 hours today, i can be proud.

No comments:

Post a Comment