Ok, good to know. I'll probably a post a more thorough wrap-up for where things are at before doing any updates. Thanks for putting this together!
Sean Kleinjung
Creator of
Recent community posts
Awesome, I submitted it right now! Thanks. :)
There are some additional, minor tweaks that I'd like to get in but didn't quite have time for. Given the nature of the challenge, do you have any thoughts on people uploading new files after submission? Does the jam keep a snapshot of what was submitted to the jam, even if there are later uploads?
Well.. I created the page and waited forever for the upload to complete. For some reason, I got an error saying I didn't have any projects that could be submitted. The time expired while I tried to figure out why.
Well, that sucks. Guess I should have figured out how this platform works earlier. Here is my entry, even though it didn't make it in. :(
Entering week three, I did some soul searching on the scope for the project and realized I had (unsurprisingly) bitten off a lot more than I can chew. In the spirit of the challenge though, the response to that is to refocus the project scope instead of crunching to death. I won't cross-post the whole update on features and scope that I wrote for the project website, but the key points from that post are included below for you all to see.
A Shift in Focus
This past weekend marked the start of week three of the Crunchless Challenge. When planning the tasks for the week, it became clear that a lot of the ideas I have for Shift are not achievable within the time constraints of a single month. The challenge facing me now, then, is… using what has been built so far, how can I get the Prelude project to the point of being a full-fledged game (if even a short one)?
The features I have built in the first two weeks include: UI components, map generation and exploration, monster behavior, rudimentary combat, simple loots system, and support for quests. The above post has more detail, but I've included some images at the end of the post. So, all of the elements of an RPG are clearly present, but there are two problems nearing the end of the the challenge. First, the game systems aren't robust/interesting/challenging enough to be actually *fun* for more than a few minutes. Combat is flat, the systems don't allow for interesting loot, tactical choices are limited, etc. And second, there isn't enough time to write and script any sort of grand narrative.
My solution to the above is to blend both elements (gameplay elements, and the story) in "snack-sized" quantities. Basically, use the systems to build just enough gameplay to be novel, but make sure that the experience ends before players realize that there's not a lot of "meat" yet. Similarly, try to do something interesting with the story without getting wrapped up any sort of epic saga. In short, create a short and tight and polished experience that justifies a nominal cost of entry, rather than an epically bloated mess that doesn't really do anything.
Congrats on getting the marketing page up! I just launched my first project website and social media presence, thanks to the encouragement of this challenge's goals. I wouldn't let nerves get to you too much -- just having a page and a (soon to be) completed project puts you leagues ahead of most people interested in game development. Success builds on success, in my opinion.
Marketing Update
A short update on the marketing efforts for this project. (I'm actually really happy that's part of the challenge, since it's given me motivation to focus on it much more than I typically would.)
I am not particularly (or at all) active on social media in general, so this is quasi-new territory for me. However, my marketing plan is as follows:
- I have created a project website for Shift
- During development, I will post more polished, user-friendly versions of the devlog content to show progress and direction. This will include screenshots or videos if applicable
- I have also created a Twitter account that I will use for this, and other game devlopment projects moving forward
- When I update the website, I will post a tweet with information about the update with a link to the updated page
So far, I have created a very basic teaser page and the links from Twitter to that (and this challenge's page). I'll update it with some more detail from the devlog sometime this week.
This post summarizes the progress made on Shift during Iteration 1 (10/31 - 11/6). In this iteration I spent 47 hours on the project, which is more than my intended (and unexpected) limit of 42. I will continue planning the remaining weeks assuming 28 hours work, and be more intentional about limiting time spent in order to meet the spirit of this challenge. I'm just having too much fun. ^^
Progress / Takeaways
Links
Completed Features
- Title screen and application navigation (Exit, pause, etc.)
- Random generation of dungeons, and ability to navigate the map
- Prototype of monster behavior and movement
- Display of player status
- Display of log messages
- Expedition end conditions (player death, running out of turns)
- Basic inventory system and equipment effects
- Random roll-only combat system
Key Lessons
- I probably should have spent more time in general planning how I was going to implement some systems before diving into coding. I will chalk this up to a combination of excitement, and the competing forces of compressed timeline, 'crunchless' constraints, and what was probably to ambitious of a project scope.
- Spent several hours on the project's build and release system, partially due to being unfamiliar with Electron. Initially this seemed not to be worth it, but I think the ability to easily cut releases is paying off even early in the project.
- Electron is not a great platform for game development so far. The application is very large. Additionally, HTML/CSS and React turned out to be more difficult to use for creating a UI than expected. Specific difficulties exist around focus and event handling, scrolling, and detecting component size changes
- The React.js state model doesn't interact well with how I tend to structure games. Integrating a mutable game engine model with React state in a way that rerenders appropriately (and with sufficient performance) took a significant amount of time this week, and I'm not really happy with the current state of it. Since the game is turn-based, I probably should have considered using an immutable game model and building a more traditional React application.
- I probably should have spent more time in general planning how I was going to implement some systems before diving into coding. I will chalk this up to a combination of excitement, and the competing forces of compressed timeline, 'crunchless' constraints, and what was probably to ambitious of a project scope.
- It's easy to work on a project for way more time than intended!
Current Screenshots and Demo Videos
Earlier Progress Screenshots
Electron rendering and layout prototype
Introduction
This thread will be used to report on the development progress for Shift: Prelude. Shift will allow players to uncover a story of loss and redemption in a hack-and-slash RPG where the dungeon -- not the hero -- experiences permadeath.
In Shift, the player takes on the role of a "Shifter" -- a sort-of mercenary that travels through inter-planar portals to complete tasks at the behest of powerful wizards. A shifter rarely understands the motives of their patron, but since they get to keep any treasure the wizard wasn't looking for this line of work is quite lucrative.
The Prelude adventure will tell the story of a grieving man's struggle to recover from a great loss, and will use a combination of techniques to convey this story as the adventure unfolds.
I am just creating this thread now, but have been working on the project since the start date of the Challenge. Since I have completed my first iteration, an update with the progress made during the first week will be added shortly.
Gameplay
Shift borrows the visual styling and random elements from classic Rogue-like games, but is tailored to people who do not enjoy character permadeath. Instead, when a character dies or runs out of turns they are pulled back to their home world, and the contents of that dungeon is forever lost to them. The narrative impact of failed objectives, and lost opportunity to capture the unique treasures of that dungeon, hopefully make this loss impactful enough to create tension.
Key influences on the design of Shift are:
- Rogue-like games: Procedural dungeon generation, ASCII-based graphics, and limited turns to complete a dungeon
- RPG Elements: The player gains power as they adventure, and meaning choices about how to advance can be made
Specific innovations for the 'Prelude' version of Shift planned for November:
- World permadeath: as described above
- Story: A month is not long enough for me to make an adventure game with deep enough content to engage a player for the long time typical of the rogue-like genre. Knowing this, I intend to create narrative elements and give the game a definite "beginning, middle, and end." It is my hope that the gameplay will be engaging enough for a player to complete the story and have a satisfying experience. Replayability of random levels after the story will be possible, of course, for those interested
Schedule
For this challenge, I intend to work on the project for as many hours as I can between when my infant child goes to sleep and 2am. This end time is fairly typical of my sleep schedule, and allows me to wake up refreshed when I need to for work each day. The absolute most this would be is ~6 hours a day (42 hours per week). However, it is likely that I will have other tasks, spend some nights doing things with my wife, and go to bed earlier some days. In practice it will be closer to ~4 hours a day (28 hours per week). I will plan each week's iteration assuming 28 hours of time, but allow myself up to 42 if I can do so comfortably.
Main Goals
Ideally, Shift will:
- Provide a satisfying "levelling and looting" experience to fans of the genre.
- Tell a meaningful story through a combination of subtle clues, frequent text descriptions, and occasional vignettes that reveal major plot points.
- Create reusable system components that can be incorporated into future projects, including: procedural map generation engine, combat system, monster AI and variations, item and equipment system, etc.
Non Goals
The following items have been considered, but are out of scope for this challenge:
- Open world exploration
- City building, farming, etc.
- Magic system for spellcasting
- Card-based combat / "tactics" system (still reflected in design document that needs updating)