Prototyping Week - Getting Organised
Added 2020-05-04 09:54:48 +0000 UTCv0.28.0 is out in the wild, and as usual that means it's time to do some bug fixing alongside work that's not likely to introduce new bugs at the same time. This week I'm doing something that should be a work multiplier - cataloging and organising all of the current game events.
Over the last two updates I've had a little bit of writers block when I tried to add new events. The problem wasn't coming up with interesting concepts (I have tons of them written down) or writing the final descriptions/dialogue (I did tons of that for flirt dialogue in the mean time). The problem was the in-between step of deciding what an event should mechanically do and where in the vast files of Lab Rats 2 I should put it. I keep hitting that step, browsing through all of the existing events and getting either distracted or overwhelmed with how much content already exists that I want to integrate a new event with. My solution is to organise everything and develop a system for creating new events going forward.
My event creation system will eventually include a checklist for adding taboo checks, personality specific dialogue, opinion checks, special role checks, etc. Before I can start anything I need to have all of my events in one place. The crises.rpy file for Lab Rats 2 is 400,000 characters long all by itself, which means reading through it is like reading through a full length novel. This is obviously an inconveniently large amount of content to browse through when I'm trying to add something new, so I'm building a spreadsheet listing every single event and all of the important information for it.
On my spreadsheet I am currently tracking the event name, what time it can trigger, if it's a mandatory event (ie. once it can be triggered it MUST go off, instead of a random chance), what characters it involves, a short description, and a list of potential outcomes from the event. While working on this list I realised it may be the kind of resource either modders or completionists would also like to have, so once I'm finished I will be releasing it as a patron reward and maintaining it as I add events going forward. There are a lot of events to go through, but I'm hoping to have this done in a couple of days!
Comments
Having a record of current events would definitely make it easier for modders who try and write events that flow with the existing content!
2020-05-07 04:14:55 +0000 UTCFor what it's worth, I want to say that I really appreciate the regular communication and obvious effort you put into this project.
Dreamdayer
2020-05-07 02:49:41 +0000 UTCThought for later, when you add another face or two to the random girl generator. I think a more "Anime" girl might be a good idea. In lab rats one, a lot of the girls (especially mom) had larger eyes than in LR2. I get that you want to be more "realistic," but I think at least one face with bigger eyes would be an improvement.
Aaror
2020-05-05 22:48:53 +0000 UTCNot a bug, but a layout issue. Once you get access to the good stuff, it is quite possible that the screen that shows all of a serum's traits disappears off the bottom, which makes it impossible to see what the side effects are (for example). Similarly it's entirely possible to have so many "Visit Someone" options that some disappear off the right hand side.
GAZZA
2020-05-04 15:52:47 +0000 UTCFound another "significant other" bug. Thanks for increasing the chance of "getting interrupted" by the husband, but when the relationship changes to Girlfriend (assuming you decide to just bend her over regardless) it doesn't clear the Significant Other field. Also, the new "serum opportunities" for lunch dates (which are a great idea by the way) don't have the girl's name in them - just the placeholder text. There is a similar bug for handjobs but I believe that's just because of missing images (as it actually causes an exception rather than just missing text).
GAZZA
2020-05-04 15:38:03 +0000 UTCI've offered my assistance. I'm a software developer/architect by trade with 2 decades work experience. Various ways to handle the crisis code... Off the cuff, I'd say you want to make the crisis code generic with mapped categories and a state machine for each crisis. That way the business logic is in one piece of crisis code and each crisis can have it's own file that would be just specialized for what it does.
Yellowcake Uranium
2020-05-04 15:37:53 +0000 UTCI would suggest that you contact your nearest university, and have one of their late semester Computer Scientist students with a specialisation in performance help you out in exchange for some money! That way you will have a better chance of using the correct algorithm, and implement it in a reasonable manner. If not, I fear this will lead to a perfomance problem more cores can't cure.
waffel
2020-05-04 15:10:37 +0000 UTC