Last week, I managed to get quite a bit of plot planning done. Most of the work centered around figuring out how to let the player uncover certain answers and backstory that could satisfy their curiosity. I want that process to feel player-driven and organic, rather than railroading players down a linear path.
I also thought of some end-game scenarios. Certainly death is one end-game. Permanent incapacitation/imprisonment will likely be another. However, apart from those possibilities, I also want there to be a player-signaled end.
There won't likely be a "big boss fight" climax, followed by "the end" as with many games. Rather, the player will be uncovering snippets of info, and will have to decide when they have enough to "move on." This moving on will likely be a deliberate step the player takes to leave Michigan, and start their next journey/investigation (i.e. a sequel).
That said, there should still be climactic moments to experience. Just not the typical three-act structure.
So with all of that structure roughed-out, I decided it was time to start working on the details. Today, I started mapping out one of the next encounters in the DMC. It's just interconnected nodes in the editor right now, but I can already see some interesting opportunities for technical skills to shine. Navigating a social environment inverts a lot of the skill priorities, as strength won't go as far as finesse when dealing with some organizations.
Tomorrow, it looks like I'll need to start filling in more specific text in these nodes, to see how it plays out in practice. I have a few nodes which currently have multiple inroads, but they might need to be split into variants depending on which route the player takes.
Overall, it feels good to have a rough sketch done, for once. The plot has been such a question mark for so long, it was a major source of stress. Hopefully, the outcome is as satisfying to you guys as I picture it in these early stages!
I went at plot pretty hard today, and got quite a bit more done than usual. Ten minutes before my official work day started, as I sat there savoring the final minutes of news-reading, I said to myself, "screw it, stop stalling. Get writing." I shut down all browser windows, denied any temptation to check email or read websites, and just focused on my story text file.
I started yanking out whole swaths of stuff that didn't feel right, structural elements that were stifling me, and just rewrote wherever I felt it needed. Some areas were terribly terse and unpolished. Other areas were a bit more fleshed-out. I tried not to judge, and just write.
I had breaks for the bathroom, lunch, warming my feet in a bucket of water (it's getting chilly up here on the mountain), but it was a day of me, a text editor, and my imagination. I feel good about it now, but man, it was pretty hard to stay on task. The mind wanders, and yearns for input, but sometimes it's best to reign it in and force it to work.
As of this evening, I think I'm happy with the major plot thread I've been working on, and started a new one that's shaping up. I vomited out a list of all the questions that I expected players to want answered, and started listing the answers, along with any clues the were either already in the game or needed to be added to provide those answers.
There's a pretty interesting network of clues to work with, now, and I think most of the picture can be painted from them. There are still a few things left unsaid which might remain that way, for fear of over-exposition. I'm also missing any real "climax" moment (partially due to the non-linear nature of threads that are there). And there are few dramatic scenes (e.g. most of what goes on is procedural, not emotional). I think it'd be nice to fill those gaps, but I'm not sure how yet.
But at least for now, I think most of the who/what/why/where/when has been figured out, along with ways to let the player discover them. Now there's the task of writing final text, integrating (especially how player's abilities can be used in each), illustrating, and determining what to do about end-game resolution (if any).
A good day. Mentally-taxing, but good. Hope everyone has a good weekend, and see you Monday!
I worked on more plot revisions today. I've started filling in the gap that's been plaguing me, though it took most of the day to arrive at something I'm reasonably happy with.
I started the day with a bit more mythology research, and I was happy to discover some interesting parallels between NEO Scavenger's mythology and the common elements in various real-world cultures' mythologies. This gave me a few more ideas on how to proceed, and I now have a slightly better picture of some major players and motives.
I also came to some interesting conclusions about the protagonist, and what motivates him. There might be some interesting opportunities to play with here, including letting the player shape some of Philip's history. I'm also looking into some possible internal conflicts or choices I can face the player with. Maybe there's a way to create an interesting choice in paths to follow.
Today's work also included a few more mechanical (or procedural, as some call it) story bits. There were some areas of the story that felt like weak links, or had poorly-founded science, and I found some better explanations for them. I think that's probably a lot of what causes my writer's block: fear of making something implausible, unsatisfying, or otherwise "wrong" in the players' eyes. I think I tend to be a pretty harsh critic with other writers, so maybe I'm being correspondingly harsh on myself.
At any rate, progress continues, albeit slowly. It does feel good to be tackling the whole picture for once, though. Having the remainder of the story unaddressed for so long was stressful, and it feels good to know there is a direction I can take it now. Just gotta hang in there long enough to patch up the plot holes :)
I'm still stuck on this plot turn that's eben plaguing me. I spent some more time brainstorming various scenarios, but still feel like they're a bit empty or contrived. They feel like they would be unsatisfying or too forced, so I've left them as brief notes for reference.
I did, however, manage to develop some interesting plot for what comes after this stage. There are some interesting choices and mythologies to establish, and I'm pretty excited about those. I spent quite a bit of time researching various cultural mythologies, and I see some interesting parallels that I can make. They also helped put some of my overall world mythology into perspective, basically by showing that real-world mythology could line up fairly well with what's going on in NEO Scavenger's mythology.
So it seems I've got a pretty good outline for 0-70% of the story, and probably a loose 85-100% of the story. But the portion around 70-85% still feels "off" to me. I need some way to make that section feel both plausible and satisfying in the context I've written (or maybe rewrite the rest to make that section easier to write). I guess that shouldn't be too surprising, as that potion of a story (late Act II, or the pre-climax) is often a critical piece, and should be hardest to write.
Coincidentally, I also stumbled upon some ancient literary passages that would be really fun to use, if I can find the occasion. Stuff that sounds like the way one would call forth ancient powers, for players who appreciate the occult/supernatural elements in NEO Scavenger. It might end up just being a sacred cow that only sounds cool right now, but I made a note of it just the same.
Still making progress. Just looking for that "right" missing puzzle piece!
Looking over yesterday's plot work, I'm still pretty happy with it. I'm also still a bit stumped with how to proceed, however. I tried out a few "major setback" options to see how they felt, but I'm not sure I've found one I like yet. Everything I mapped out yesterday seemed to flow pretty logically and satisfyingly until this step.
The more I struggled with it, I started wondering if the problem might be that I'm trying too hard to rigidly fit the screenplay model. In other words, I'm trying to make this next plot beat the big setback before the climax, when the story might need additional beats before this point (or after).
As an experiment, I decided to try moving a few things around, so they happen earlier in the story. And that freed up other things to happen towards the end, instead. That might be an interesting way to structure things, so I'm leaving that in place for now.
In particular, maybe it opens up the possibility of answering a few more questions about Philip's mystery besides who he is/was. Perhaps he should have some time in this story after that discovery to decide what to do about it. And that got me thinking about whether Philip could be presented with an important choice about redefining himself. Maybe this self-reflection is the midpoint of the story? What screenwriters call "the point of no return?"
That might actually make for a more satisfying story, since it puts more control in the players' hands, and offers meaningful choice. Of course, the onus would then be on me to make that choice have some satisfying consequence, which is no small task.
I guess today actually was pretty productive, in that light. Not a lot of written text to show for it, but some significant rethinking and organizing. Still hard work, in any case. Forcing my brain to stay on task with this sort of abstract thinking is really difficult, especially for long enough spans of time to get any appreciable decisions made. Decision fatigue racks-up quickly in this type of work.
But I'm still pretty excited about the way plot's turning out, so that's a good sign. Just gotta keep that enthusiasm going long enough to finish the organizing, and then write actual encounter text!
Note: I apologize for the late news this evening. We had a power outage until a few minutes ago.
Hope everyone had a good weekend. While I wouldn't say my trip was relaxing nor fun, my time away from work did give me a chance to step away from NEO Scavenger and come back with a clear head.
I managed to catch up on messages this morning, and it seems things were relatively calm around here. A few bugs have cropped up in 0.979b, and I'll start addressing those in a patch soon. In the meantime, however, I decided to spend some serious time on plot today.
My plot planning work last week left me with a lot of questions and loose ends that I wasn't sure how to tie up. I did gain some useful insight while examining the plot elements and key characters in my world, and spent some more time researching plot techniques in the library. But a lot of it felt contrived or hokey, and I didn't feel like I finished the day with a solid direction in which to move.
I started with the former method, slotting what I already knew about the world and my plot decisions into the recommended steps. It was pretty easy at first, since I knew a lot about the major players in the world, the goals, and several important conflicts. However, as I started to map out the progressive "disasters" prescribed in the Snowflake method, I realized that a complete story might end shortly after entering the DMC if I wasn't careful.
In a novel, that might not be a bad thing, as I could draw out the intervening trials and quests to reach the DMC as much as needed. However, as a game, that only represents a few hours of gameplay, and a lot of unused map.
At this point, I dug out an old character I was toying with a while back, and created a hypothetical meeting with them to see where it could go. I also started examining Michael's Screenplay Structure, to see if that perspective could inspire any new ideas.
After retracing the plot's steps in the screenplay structure, I started to see some interesting opportunities emerge. The quest to reach and gain access to the DMC fit nicely with steps in the typical screenplay, and I saw an interesting interaction with a character that could result in more conflict, and more challenges outside the DMC. In this new revision, the currently playable storyline (reaching and entering the DMC) occupied a smaller portion of the overall screenplay, and left a little over half the screenplay as new content.
What's more, the new revision felt much more satisfying and plausible. It had some good rising and falling action, and felt like a story that was going somewhere and concluded, rather than a meandering fizzle.
Part of the improvement, I think, was trimming down the story to tackle fewer questions. My original vision had Philip tracking down who he was, why he was in cryo, who's meddling with him and why, and then doing something about it. After doing these analyses, it became more clear that each of these questions was an interesting story in itself. The quest for Philip's identity, who he really is, could be a satisfying adventure of following leads and being foiled several times, reaching some climactic ending where he finally achieves his goal, and being faced with what to do about that discovery.
I think keeping the main plot limited to that one goal is more reasonable than trying to conquer five goals in the same narrative. Trying to do all five satisfyingly in a single narrative would probably feel like I'm jamming exposition down players' throats, assuming I could even do it before the player got bored of the game. And even if the main plot covers less, there's still room for optional side-quests to reveal bits of useful info or challenge/reward.
As of this evening, I've got a new plot outline that covers about 70% of the story, and I have an idea where to go with the rest. Tomorrow, I can look at this new outline with fresh eyes, and see how it feels. If it sits right, that should help me figure out what's left to be done, how to handle remaining skill balancing, and plan requirements for the remainder of the work.
It's nice to have all the pieces lined up for once, with a roadmap to the end. Unlike some of the sprawling plot threads I've had in previous iterations, this one's feeling a bit more solid!
Just to give everyone a heads-up, I'll be out of town attending a funeral for the rest of the week, so things will be pretty quiet here for the next few days. I plan to be back on the weekend, though, and should be back to normal hours on Monday the 23rd.
Fortunately, it appears build 0.979 fixed a lot of the major issues we've been seeing, so the game should be pretty stable while I'm away, and during work on the next batch of stuff.
What's in the next batch? I started on some more plot work today, and will likely try to get more of that ready for the next build. Bug fixes, balancing, and UI tweaking will also continue as-needed.
I'm not sure how much internet access I'll have in the next few days, but I'll do my best to check email for any urgent issues should they come up. So do feel free to send me an email if you're having issues with your account, access to the game, etc.
Hope everyone has a good rest-of-week, and I'll see you Monday.
Both the new demo and beta include the following changes:
Added code to prefer encounter responses with more charge requirements before lesser requirements.
Fixed a bug in encounters that would ignore certain branches in probability-based outcomes.
Fixed a bug that caused hoodie pocket to disappear when dragging items.
Fixed a bug that allowed backpacks to fit inside backpacks.
Fixed a null pointer bug that occurred when discharging an item that had too few charges left.
Several of these fixes address the container issues we've been seeing, which were introduced in 0.977 and 0.978. Containers should be back to normal now, and the discharge item fix should improve stability when such items are being used.
Additionally, the demo includes all fixes in 0.978, since the last demo uploaded was only version 0.977. This should include fixes for the way encounters queue, and prevent weird interruptions there, among other fixes.
Updates Included in Beta
The new beta includes the following additional changes:
Added encounter options to alert player to insufficient charge for hacking.
Added hacking encounter branches to explain insufficient charge in target devices.
Changed cracking software charge usage to smaller amount per attempt.
Changed chances of cracking each device type to be higher.
Changed price of hacking software to be higher.
Changed laptops to be hackable via the hacking skill alone.
Fixed a bug that caused Hatter's security screens quest to always fail.
Fixed a bug that caused savegame loading status message to be hidden.
Fixed a bug in savegame loading that sometimes caused a crash.
Fixed a bug in Haggerty Health thermo treatment.
Fixed a bug in Haggerty Health diagnostics.
Fixed a bug in Zom Zom's that failed to remove iSlab when used as payment.
Fixed a bug that caused software to always be visible inside locked/off hardware when loading a save game.
Fixed a bug that allowed smartphone hacking without electricity.
Fixed a bug that allowed hacking with software stored on memory sticks.
Fixed a bug that allowed hacking without using any laptop charge (via memory sticks).
Fixed a bug that caused first mouseclick to be ignored after starting a hacking encounter.
Fixed a bug that caused SmartPhone GPS not to discharge battery.
Fixed a bug that allowed laptop to open in spaces where it shouldn't fit.
Most of these changes are to the hacking system, to make it both easier to use and less buggy. Laptops are now hackable via skill alone, instead of requiring special software. Additionally, hacking devices should use less energy now, and have a higher success rate.
There were also quite a few encounter fixes. Some were introduced when the new hacking code went in, while others have been more long-standing, and I finally noticed/fixed them (e.g. Haggerty Health).
Overall, the game should be much more well-behaved than in the past two builds. As usual, let me know on the forums if there are any more issues using the new builds.
I got back last night, and decided to use today as a bug-fixing day since the latest build still has some bigger issues. For most of the day, I've been addressing bugs reported on the tech support forums, and I think I've got most of the bigger ones solved. E.g. nesting containers, missing pockets, hacking glitches, etc.
There was also another null-pointer bug I found in the discharge code, which likely caused random glitching during longer sessions.
I also made some changes to the hacking encounter on the laptop to make it easier to use. Now, if the laptop lacks sufficient charge to execute a hacking application, it'll let the player know without wasting any charges. I also changed the laptop to be hackable with skill alone, rather than via another unlocked laptop. A lot of players have mentioned that hacking wasn't possible until way in the late game. Rather than adding more unlocked laptops to the game, or more charges, I decided to follow their advice.
I playtested this evening for about an hour, and I think things are running pretty smoothly now. I'll probably test a bit more in the morning, and see about getting a new build uploaded soon after that.
Looks like there are still a few issues that need sorting out in 0.978. The game should be playable at this point, but the hacking stuff still has a few glitches. The camp benefit stacking bug may be back, too, so let me know if you see evidence of that.
I apologize for the bumps in the road, as my rush to patch 0.977 sounds like it still left a few things misbehaving.
I have to head out of town in a few minutes, and I'll be gone until tomorrow night. So I won't be able to get another patch uploaded right away. However, once I'm back, I'll look into the bugs that are still outstanding, and see if I can get another patch ready asap.
Thanks for your patience, and for your help getting this new build stable!
I've just finished uploading new beta build 0.978b, which fixes a few significant bugs discovered in yesterday's beta build (0.977b).
Updates Included in Beta
The new beta includes the following fixes:
Fixed a bug that caused some encounters to re-trigger before player has a chance to leave hex.
Fixed a bug that caused software to be inaccessible inside accessible hardware when save game loaded.
Fixed a bug that caused software to be lost when dropped inside an hardware item that was "off."
Fixed a bug that caused data inside cellphones to always be locked.
The critical fix above is for encounters that trigger when players visit certain hexes. A bug in the "end turn" code was introduced in 0.977 that caused them to loop endlessly. This should be fixed now.
The rest of the fixes are some teething issues discovered in hardware/software since 0.977 went live.
I apologize for the inconvenience these bugs caused. I try to keep new builds as bug-free as possible, but I clearly missed a few in this last update.
As usual, let me know on the forums if there are any more issues using the new builds. And thanks for your patience!
Both the beta and demo include the following fixes:
Added a button to the message window to make it expand/collapse based on user-click, rather than mouseover.
Added pop-up text to battle UI's previous move icons.
Added code to alert player when items being stolen by AI in their sleep.
Added code to allow item access in battle when behind cover, even if enemy has loaded, ranged weapon.
Added code to degrade items used in encounters. bd
Changed encumbrance penalties on starvation, feeble, dehydration, and blood loss so players could still move if 2 or less are applied at any one time.
Changed "Long shaft" ingredient to "Large shaft" for consistent terminology.
Changed the way AI wounds are tracked to optimize memory.
Changed infected water to mostly be safe, sometimes produce gastroenteritis, and rarely produce cholera.
Removed auto-turn-advance when player unconscious in battle. (Possible cause of endless turns).
Fixed minimap zoom when switching resolutions.
Fixed destroy hotkey for cursor modes to match tooltip.
Fixed a null pointer bug in accessing creature's current attack mode when that mode no longer exists.
Fixed bug where items would be picked up when switching screens via mouseclick.
Fixed a bug that caused non-degradable items to degrade when spawned as components of a treasure item (e.g. screws, string).
Fixed a bug that caused items to disappear if user tried to exit items screen while dragging item.
Fixed a bug that caused incorrect number of charges to be removed when in stacks.
Fixed item stack counter to not overlap adjacent items.
Fixed a bug that caused some conditions to reference out-of-index values in an array when transitioning to next condition in a chain.
One of the big changes here is to the UI. The message window no longer flies open when moused over. Instead, clicking inside the window will both open and close it, so it doesn't get in the way while mousing over things. Also, the battle UI now has tool-tips for the combatants' previous move icons.
Another big change is the removal of auto-turn-advance, which kicked in when the player was unconscious in battle for 3 or more turns in a row. I'm not certain that this caused the "endless turns" bug, but it's possible. And since AI now tends to loot the player or quickly finish them, this feature seems redundant for the risk.
The encumbrance changes should be a welcome sight to those who choose the "feeble" trait frequently, and being able to access items while in cover should be important to "ranged" fighters.
Updates to the Beta Only
In addition to the above changes, the beta has the following updates:
Added laptop, smartphone, cellphone, iSlab, and their respective batteries to game.
Added lamp modes to smartphone and iSlab.
Added hacking software for each device type.
Added data files that can be found in any hardware.
Added device-hacking encounters accessible via laptop context menu.
Added random unlocked, empty hardware, chance of batteries, and software to junk store.
Added memory stick item for carrying software and data outside of hardware.
Changed flashlight and night vision goggles to have manual on/off states via context menu.
Changed sling to only accept pebbles and stones as ammo.
Fixed a bug that caused player stats to be doubly-affected by some conditions when loading a save game.
Fixed a bug that caused sleep to interfere with loading a save game.
Fixed a bug that allowed player to have abandoned car encounter while unconscious.
Beta players can now find various hardware items in the game, which have random data inside. Most of the time, however, that data is locked away. Hackers, using appropriate software with their laptop, can crack these devices to get at this data. And the data can include a bit of history, humor, and in rare cases, information worth money at the junk store.
Some of these devices can also be used as tools in the field, such as lamps and GPS software on smartphones and iSlabs. In all cases, though, these devices will need appropriate batteries and charges to operate. To access special features of these new items, right-click the item and choose the desired operation.
With these new changes, flashlights and goggles have also been updated to take advantage of the right-click menu. Now, they can be switched on and off manually, instead of automatically when equipped.
There were also quite a few major bugs fixed in this version, especially having to do with loading of save games.
Overall, both builds should represent a more stable experience, with improved usability. And hopefully, the new toys in the beta were worth waiting for!
As usual, let me know on the forums if there are any issues using the new builds.
I'm getting ready to wrap-up the next build, so today was more bug-fixing and tweaking. There were still some things worth fixing before sending it out into the wild, though.
One such change was a tweak to the encumbrance limits when dehydrated, starved, feeble, and blood-let. Any two or more of these conditions at once would cause the player to be saddled with a 0 weight limit. Since that effectively paralyzed the player, I decided to adjust those penalties slightly such that two or less still allows movement with a minor load. Now, starving feeble players can still walk with clothes and a choice few items, but characters who are starving, feeble, and dehydrated can't.
There was another null-pointer bug which popped up during combat today. This one was when trying to access the current attack mode of an AI creature when that attack mode is no longer there. It was an uncommon bug, but since I was able to see it happen, it wasn't too hard to fix.
I also fixed the issue where clicking on the crafting screen button would sometimes pick up the item under the cursor once that screen fully loaded. This actually happened on all screens, but crafting was the most common. The mouse states are now cleared between screens, so that should no longer happen.
I also made a few more tweaks for balance and usability.
The battle screen's "previous move" icons now have tooltips, to help players identify what the move did. I also made some changes to the way AI loots the hex when the player is asleep. Now, each item taken has a chance to wake the player, and if it does, the looting stops, and the player is warned in the message box. Battle should commence in these cases.
The sling now only accepts pebbles and stones, instead of any 1x1 or 1x2 object, since it only has attack modes defined for those two ammo types.
I also decided to make a long-intended water change. Contaminated water no longer causes cholera 100% of the time. Instead, it's now fine to drink most of the time, with a moderate chance of gastroenteritis, and a small chance of cholera. This is a bit more realistic, and forgiving. It's still important to boil water (i.e. gastroenteritis is no walk in the park), but should be less of a guaranteed death sentence.
Finally, some more ingredient nomenclature was changed to match terminology used in other ingredients.
I think we're getting there. I'll be giving the build another test run tomorrow morning, and if all looks clear, I think I'll try publishing a new build. Between the hardware/hacking update and all the fixes and tweaks, it should be a pretty good upgrade from 0.976b.
Today was mostly filled with playtesting and bug fixing. And as it turns out, that latter part was a much-needed step. There were some pretty glaring bugs in the code.
Some very big fixes were due to a bug reported on Desura. Namely, the game crashed after a long session (4+ hours) was saved and later loaded. Understandably frustrated, the player contacted me about the issue, and we got to talking about the symptoms. A few remembered clues and screenshots later, and I was staring at a nest of interrelated bugs.
Specifically, there was a bug in the way save games were loaded, which sometimes caused player stats to be doubly-penalized for certain conditions (poisoning being one of them).
Additionally, there was a bug such that loading a save file where the player is unconscious causes the game to enter "sleep mode" before it finishes loading the save file, getting stuck with a black screen.
And on top of that, some code I added recently to make conditions with multiple outcomes independent of each other was broken, causing a null pointer error when advancing (again, in cases like poisoning).
So if your character had poison, cholera, or any of a number of other issues during a save/load, there were some pretty bad errors flying around. Between that and the unconsciousness issue, I wonder how many game crashes and lost saves were the result of this trio. I'm not sure if any of this could've caused the "endless turn" bug, but they certainly didn't help.
There was also a minor bug occurring when loading a save file that contained nested, stacked items. But only sometimes. I just ran into it by accident, and plugged the hole. Similarly, there was an issue when dragging an item in the items screen and trying to exit the screen, which caused all items to disappear temporarily. And worse, if the player rolled over one of these disappearing items, the game would throw an error. This, too, was fixed.
And finally, I fixed the bug that caused item components like string and screws to be partially-degraded if spawned in a "weathered" treasure. This should prevent cases where a degraded screw or string causes an otherwise good-condition crafting item to appear broken.
I also made a few tweaks and improvements, based on both feedback and playtesting.
I changed combat item access so that it should be possible to access items when under fire by ranged weapons, as long as the player is behind cover. Previously, being within range of any weapon prevented item access, making many firefights very short.
I added a cheap-o memory stick item to the game to allow software to exist outside of computers. It uses the same art as the security footage memory stick, and has minimal value when empty. My main reason for doing this was to remove hacking software from hardware found "in the wild." Hacking software is now something one must buy specially in the junk market. And in order to appear in the junk market (e.g. the ground slot), software needed some sort of container. Hence, the cheap-o memory stick. Regular software (e.g. lamp, GPS) can be both found and bought, however.
Also, I finally changed the message window to only expand/collapse when the user clicks inside it, instead of when rolling over it. Many people accidentally roll over it when aiming for shoes or items low on the screen, and it can be annoying. Now, there's a button to open/close it, but the user can actually click anywhere in that area to make it expand/collapse. The button is just a hint that one can click there.
The point of playtesting today, of course, was to get a sense for how the combat feels. Despite all the bugs found and fixed, I got a healthy-sized play session in. I decided to bump-up the hardware spawn rates a bit more, and after two days of frequent scavenging, I found my first laptop!
I was actually pretty excited about it, which is hopefully what other players will feel. I couldn't wait to see what was on disk, so I opened it up, and...no charge in the battery. Bummer.
As luck would have it, I stumbled upon a smartphone in an abandoned office tower a bit later. And it had charges! I switched it on and...locked. Damn. I tried transferring charge from its battery to the laptop, and switched that on instead. Also locked. And me with no hacking skill nor software.
On the bright side, I had a decent amount of charge to plop into my empty flashlight, and dusk was coming soon.
Overall, it felt about right. Like caches of info treasure waiting to be cracked open, if I had the skills and tools.
I'll likely do some more testing tomorrow, and with any luck, things will run a bit smoother. Have a good night, all!
I finished adding the first batch of random data file items to the game this morning. There are a handful that are worth something, and a sea of files that are worthless. In many cases, though, the file describes something about the world that was, whether silly or serious.
Once those were done, it was time to start populating the loot tables. I made a few tweaks here and there, namely to start treating the iSlab as a potential tool rather than junk, and to make locked/battery-less hardware a viable junk item. I also setup "random hardware" and "random software" groupings for appropriate items (e.g. laptops can contain laptop software, but not iSlab software). And finally, I wired those into the appropriate world loot tables (e.g. making sure the random loot and tool tables pointed at the new item groupings).
There were also a few encounters that needed fixing after these changes. Since the old flashlight and night vision goggles were the same item whether on or off (depending on the slot), I needed to change the way those items were flagged in encounters (such as scavenging). I also needed to update things like the Hatter and Zom Zom's encounters to accept the new iSlab modes (previously, they only accepted the "off" iSlab, as that was the only one available).
And I realized the hardware could be exploited in buying/selling at the junk market, so I added a stop-gap there to prevent it.
Of course, encounters are going to need an overhaul at some point, both because of the new tools I've been adding in the past several months, as well as plot changes I've been thinking about. So I'm not going to spend a lot of time reworking encounters that use these tools just yet, as there are still a few items that need doing (e.g. mechanic and electrician items).
My initial test involved about 45 minutes of playing, and I have yet to encounter any hardware :) That may not be a bad thing, as that stuff should be somewhat uncommon. However, I may need to debug-force some hardware at some point, just to see how it feels in practice. But so far, the raider I knocked out didn't have any, nor did the two-dozen places I've scavenged. Even the two looters I saw mauled by dogmen in the distance came up empty. I may have to consider giving them at least a higher chance of a hardware tool, given their usual proximity to the DMC.
Anyway, most things are hooked up and (ostensibly, anyway) running. Some more testing is needed on Monday, and hopefully I can start thinking about uploading a new build for you guys to try.
Some of you might've noticed a brief site maintenance window this morning. I apologize for that. I had to update some software versions on the website in order to keep security current. It went pretty smoothly, and I haven't found any issues with the upgrade. But if you notice anything awry, let me know!
I continued work on the hardware/software items today, and finished setting up encounters for both the iSlab and smartphone. Now, each of those devices can switch to lamp mode, or activate GPS. The lamp works like a flashlight, draining the device's battery each turn, and providing benefit only when held.
The GPS is more of a one-shot tool. Each discrete use provides a benefit and discharges the device. One usage will reveal a handful of nearby hexes, if they were previously black. It may also reveal some nearby scavenging sites. The idea is to simulate getting local cached map data from GPS devices, since the satellite network is still intact enough to be useful for positioning. The game isn't smart enough to keep track of each usage, though, so it's possible to use GPS multiple times in a location with cumulative effect. However, since this costs electricity each time, and has diminishing returns, I'll live with the unrealistic limitation.
I also decided to disable the code in combat which automatically advances turns if the player has been unconscious for more than three consecutive turns. I'm not certain this is the cause of the endless turns bug, but since I don't have a solution yet (indeed, I don't even have a reliable cause figured out), this might be a useful experiment. Perhaps we'll see the reports of the bug drop off with this feature removed. Besides, I think the reason it was added in the first place is no longer the case. Since unconscious creatures tend to be looted or die much faster now, there shouldn't be a lot of waiting on the player's part.
Finally, I started making the data items that can be found on hacked devices. I wasn't sure exactly how I wanted these to work, but they'll probably be software items that can cross from any device to any other device, unlike apps (which are device-specific). Also, they may or may not stack, just so they don't take much space.
They'll probably be a bit like the headline/newspaper items in that they're a shared item type with unique descriptions. They'll likely be shorter than headlines/newspapers, too. Rather than 1-2 paragraphs, they'll be something like:
Database: Address Book. Last known addresses and contact info for people.
Text File: Bank Account Pre-Authorized Debit. (Active DMC Personal Account)
Text File: Corporate Procurement Records: Defunct (Corporation Dissolved Long Ago)
Text File: High school history report on the rise of China
Video File: "Real American House Husbands" S1E1
Image File: Cat in a bathtub, looking cute.
Some will be worth money to a fence at the junk market, but most will be worthless. Some players might find entertainment value in the short descriptions, though. I know I sure enjoyed writing them. I.e. one part commentary on the inanity of our times, one part alternate history.
Work on those will likely continue tomorrow morning, followed by figuring out how best to add their data to the game. Then, it's assigning prices and rarity to all the items, and trying them out!
Today was mostly spent fleshing out the skeletal hacking system I've setup. I finished adding the cheapo cellphone items, as well as the lamp-specific smartphone and tablet items (I've decided to go forward with unique art for the "modes," to aid in quick visual recognition). I also added device-specific cracking software to the game, so the laptop has special tools for each device type.
Once all the pieces were in place, it was time to hook everything up. First on the list was the hacking encounter:
The above is a snapshot of the encounter I've setup for laptop usage, as it looked at the end of the day. At the center of all the nodes is the home screen, and from there, each of the device types can be cracked (if the user has applicable software and hardware). Each of the quadrants is for a different target device, and the gold nodes are successful hacking attempts.
It's a pretty basic setup, but it should enable players to access locked items with the right tools and skills. I still need to work on the pay-data items, plus a few other software items, so unlocked devices can have random software "treasure" when unlocked.
There's also a stray node on the left side for players without the hacking skill. It basically amounts to "I don't know what I'm doing" if they choose to hack any items. And the rest of the nodes are the requisite "exit/cancel" nodes in case the user changes their mind.
While testing this out, I came across a bug in the discharging code, so I fixed that. I also found a better way to initialize new objects, to avoid some redundant item-swapping (better for performance, and prevents accidental switching-off of newly-spawned, powered items).
Finally, I updated the flashlight and night vision goggles to switch on/off via context menu, instead of automatically when equipped. During this process, I added indicator lights to the art for each to show when they're on/off.
For tomorrow, I'll be looking into the non-hacking stuff on tablets and smartphones (namely, the lamp software and GPS). I also need to start creating some pay-data items. And once all that is working, it'll be time to do some test runs to see how things feel in practice (e.g. balancing the economy).
I continued my work on hardware and software items today. Last week, I had the laptops up and running, and could switch them on/off, and open/close them via right-click menus. I could also "use" a powered, unlocked laptop to hack another powered, locked laptop via an encounter. And I could access batteries at any time, but software only when the laptop was switched on.
Today, I made a few fixes and adjustments to those systems. First, I fixed a bug in the way charges are removed (from any item, not just hardware). Then, I fixed a bug that allowed software to be removed from a locked laptop (should only be possible when unlocked).
I also decided to obscure inaccessible software:
What we see above are two laptops, one locked and closed (top), and one unlocked and switched on (bottom).
The top one has its software contents blacked-out, so we can't tell what it is. We also cannot manipulate the software at all, even just to move it around inside the same laptop. The laptop must be hacked first to get access to that data, and info on it. This way, the player can't see what they're getting without investing some time and resources into the hacking endeavor. Some of those black boxes might be useless data, others might be valuable.
The bottom laptop shows what it'd look like when unlocked/hacked. We can now see the nature of the files stored inside.
I'll probably make "unhacked" versions of hardware slightly more valuable than the "hacked" versions. Fences will pay a slight premium for untampered hardware, since it could contain a big pay-off. However, they're also aware that most will be pretty boring, so the premium isn't very high. This is sort of like buying a sealed booster pack of collectible cards, if you're into that. There's a slight value increase in the mystery.
Conversely, "hacked" hardware is worth less. Its secrets have been stripped, so there's no potential pay-off inside. That said, any useful data found in the hacking process can still be sold or used individually.
The trick will be finding the right balance of prices and rarity of data such that it's not an easy decision. If the pay-data is too common, nobody would ever sell unhacked hardware. If the pay-data isn't worth enough, nobody will bother hacking. It'll take some time and testing to sort out.
In addition to the above, I also finished adding the rest of the iSlab on/locked items, the collection smartphone items, as well as the batteries for each. I even got a start on the cheap-o cellphone item.
Once I finish getting that cellphone in, there are a few tablet/smartphone modes (lamp, GPS), some software items (cracker software for different hardware types), hacking encounters (to unlock each of the hardware types), and data items (pay-data and useless data) to add. Still a bit more work, in other words.
That's all for tonight, though. Have a good one, all!
I totally forgot that this is Labo(u)r Day weekend in Canada, so I have today off. Nothing to report today except some fooling around with HaxeFlixel, Nape, beer, chores, and probably a burger for dinner later.
Hope everyone had a good weekend, and see you tomorrow!