illuminesce: (Default)
2022-04-27 01:05 pm

Terranova is Released!

 TERRANOVA IS RELEASED! πŸŽ‰πŸŽ‰

You can download the full game for Mac or Windows on itch.io for $20.04 or Steam for a fancy $24.99.
 
A person waving their arms with the words, "Terranova is Released"
 

The full game features...
  • A full ten hours of story, complete with romance, drama and plot twists galore
  • Three unique endings that are based on your choices within the game
  • Shiny new IM to chat your friends and away messages that change based on story
  • Fully-functional Solitaire to play while you're chatting your friends
  • Awesome new credits song by Gloomy June and the Y Axes
Huge thank you to those of you who supported us by buying the Early Access Beta or who bought last year's Queer Games Bundle. Your contributions have helped pay the diverse artists we worked with on this game. You should be able to download the full game at no additional cost. 
 
If you have any trouble, please contact us directly at playterranova@pm.me or message us on the Terranova Discord.
 
Join our launch party!
We'll be celebrating with a release party on our Twitch. We'll be mixing drinks, demoing the game and slinging 2000's nostalgia trivia.
 
When: Friday, April 29th 8AM-12PM JST  Thurs, April 28th 4PM-8PM PST / 6PM-10PM CST / 7PM-11PM EST
 
Image text reads, Release Party! Friday, 8AM-12PM JST, 10AM-12PM AST, Thursday 4-8PM PST, 6-10PM CST, 7-11PM EST
 

Come invite some friends and celebrate our launch with us!
 
We are so grateful to have your support.
We hope you enjoy our game.
 
Your friendly neighborhood devs,
CJ & Matt
illuminesce: (Default)
2022-03-24 01:27 pm

Coming Soon...

Hello folks, we've been rather radio-silent here on itch.io. Our last update here was about our FujoCon panel--my goodness, almost a year ago! If you haven't been keeping in touch with us on other parts of the web (such as our homepage, our livestreams on Twitch, or our Discord), well... you'd be forgiven for assuming Terranova was stagnant.
 
Rest assured dear roleplayers, our development continues. We've been busy adding more story chapters, more things to do, and more polish to Terranova. A few recent additions are multiple save slots as well as an autosave feature, and a new solitaire app.
 
Login screen with icons.
 
 
Image of Solitaire
 

But enough about new features, you saw the post title -- Terranova is coming soon. How soon? Our release date is April 22, 2022!
EDIT: our release has been pushed back by one week to April 29, 2022.

Glitter Text: April 29, 2022

Once the full game launches, it will sell for $20.04 (USD). Just a friendly reminder that you can get the game for the early-access price of $5.00 (USD) until then.

<3
CJ + Matt
illuminesce: (Default)
2021-03-01 09:28 am

Terranova Updates on Twitch

Since releasing the Terranova beta, we've been doing an experiment—instead of posting our updates via devlogs on itch.io, we've been livestreaming our work on writing and polishing the game every Friday morning/Thursday evening U.S. time for two hours. So far, we've had a lot of fun with them, and huge thanks to the folks who are showing up regularly! In these streams, you can ask us questions about story, writing, game development or just about fandom in general.

An interface of a person in red armor with a Discord roleplay

Screenshot from one of our recent streams doing live roleplay. Wallpaper is by @missmajored.

The last two streams we've been working on a live roleplay to write a scene between two characters, and the next stream will be focused on live drawing for fanart we're putting into the game.
 
 
Our next stream will be Friday, March 5th, 8:30AM~10:30AM JST, which is Thursday, March 4th at 3:30PM~5:30PM PST / 5:30PM~7:30PM CST / 6:30PM~8:30PM EST for U.S. folks out there.
 
Check out our Twitch channel here and come watch us stream.
 
For more updates, we've been focusing on improving our Discord channel, so come hang out with us!
 
See you on Friday!
 
CJ + Matt
illuminesce: (Default)
2021-01-02 01:05 pm

Share Terranova with your friends!

Image of two screens, side by sideImage of a second screen

New Website + Socials

Thank you for your continued support! From releasing our early access beta late last year, we're excited to announce the launch of our official game site, playterranova.com. There's all-new character art and descriptions as well as a press kit for those of you interested in spreading the word.
 
Your support means a lot to us, so if you have a Twitter, consider following us @playterranova and retweeting this tweet to spread the word.
 
For those of you who haven't already considered joining our Discord for supporters, we love chatting. :)
 
Now Streaming Game Dev on Twitch

Last week, we streamed our web development of our site, and had fun chatting about our first anime (including CJ doing a terrible impression of the Ronin Warriors dub). As indie game devs, we think that sharing with the community is caring, so we're taking two hours a week to live develop Terranova on Twitch so you can see our process and ask us questions.
 
Our next stream will be Thursday, January 14th at 3:30PM PST/5:30PM CST/6:30PM EST (and Friday, January 15th 8:30AM JST for those of you in Japan) and will run for two hours, so be sure to check it out at itsilluminesce on Twitch!
 
We'll see you on Thursday!
 
Your friendly neighborhood devs,
CJ & Matt
illuminesce: (Default)
2020-12-07 01:20 pm
Entry tags:

Beta is LIVE!

Image of two girls holding hands with the text, "Beta is Live!"

Terranova is a nostalgic interactive fiction game set on the internet in the early 2000's. It's about fangirls and anime culture, and centers around a roleplay community of four girls, each with their own story  to tell. 
 
Today, we are excited to announce Terranova has officially released in beta!
 
This version includes:
  • 6 months in-game of playable storyline and choices for befriending your fellow roleplayers
  • New wallpapers, shiny new icons
  • New Start Menu with easy access to your favorite websites
  • Chatlog saving functionality so you can look back on your old chats
     
This also brings us one big step closer to releasing the full game, in all its glory. We have plans for lots more story updates in the future. But if you just can't wait, or if you want to support our development along the way, buying the game now is a great way to do that! You'll get the game at the current beta price, and get access to the full game when it's out too.
 
'Til next time, happy roleplaying! And join us on Discord for more Terranova news.
 
Your friendly neighborhood devs,
CJ & Matt
illuminesce: (Default)
2020-09-28 12:01 pm
Entry tags:

Pricing Updates to Terranova and $5 Beta Access!

Hello everyone!
 
We're excited to wrap up the writing for Terranova beta and move into QA testing! Huge thanks to the folks on our Discord and those who pointed out some bugs we squished last week.  🐜
 
Text: Pricing Updates for Terranova
 
Currently, the alpha is available for free. We believe in only charging money when we can proudly say we're happy with the quality of work we're giving to our players. We're soon approaching the release of the more-polished, higher quality beta. So to be transparent about what our plans are for beta, we're announcing our plans for pricing updates.

 PricingStory ProgressionApprox. Gameplay HoursDLC
Alpha (we are here!)FreeOctober 2003~December 2003~1 1/2 hoursNo
Beta Access (Fall 2020)$5October 2003~April 2004 (+4 months)~3 hoursNo
Full Release (Winter 2020~Early 2021)$9.99October 2003~February 2005 (full planned story)~6+ hoursOptional downloadable wallpapers

Beta access will be available for $5, which will include the full game when it comes out. After the game is released, the planned price will be $9.99.
 
Our decision to charge for early access is not about being rich. CJ works full-time and spends their nights and weekends on Terranova and Matt works full-time on the game. We have one income, and use it to pay our artists and collaborators fairly as well as live modestly. If we do get monetary support, it will allow at least one of us to remain full-time working on games, which would both speed up our release time for Terranova and give us space to continue making cool things.
 
If you have $5 to send our way, please consider purchasing our beta in the future. We'll release a Ko-Fi link as well when the beta goes live.
 
Thank you as always for your continued support! If you'd like to chat us directly, please follow CJ on Twitter or consider joining our Discord.
 
Your friendly neighborhood devs,
 
CJ & Matt
illuminesce: (Default)
2020-09-23 06:02 am
Entry tags:

Terranova: Alpha 5 released

Hello friends,
 
I don't have a lot of fanfare to go with this update, because there's not much noticeably new in the game this time around, but I've uploaded a new build of Terranova with some bugfixes.
 
Of note is a fix for a bug that has the potential to block you from making progress in the game (many thanks to screaminghead for reporting it!).  It seemed serious enough that I wanted to put out a fix sooner rather than later, so here we are slightly off from our usual release schedule.
 
Until next time, happy RPing!
 
Your friendly devs,
 
CJ+Matt
illuminesce: (Default)
2020-09-14 01:13 pm
Entry tags:

Terranova: Alpha 4 released

Hello friends and fans! Mabbees here with another new build of Terranova.
 
But first, I want to share some other happy news: Terranova recently surpassed over 350 downloads. While that might not be a big number in the grand scheme of things, it's a pretty big deal for us. It means our little project has reached far more people than we dreamed of! We're pleased as punch, and we hope all of you who have taken the time to play Terranova are too. Thanks for playing!
 
Right, on with the game announcements. Here's what to look for in the alpha 4 build of Terranova:
 
Game Feel Improvements
  • More consistent UI layout
  • Performance tweaks
  • Better UI for typing blog or chat responses
Bug Fixes
  • Fixed some dead links
  • Fixed some text-formatting issues and typos
  • Fixed an issue where loading a saved game didn't resume from the right place
  • Fixed a bug that sometimes caused the game not to remember your avatar preference
  • Better button debouncing

Two girls holding hands in a pool of wate

New Art
Stay tuned--we've got more game updates planned for the near future, including new story chapters, so be sure to check back in (even if you've played to the end of alpha 4). We also have some more new art pieces that didn't make it into this release yet, but will be part of a future update. Can't wait to show them off soon!
 
Your friendly devs,
CJ & Matt
 

illuminesce: (Default)
2020-08-31 12:33 pm
Entry tags:

Group Chats are LIVE!

 Did you miss us? We missed you. We've got a few new things for you as we hunker down working on the beta release.
 
New! Group Chats

What could be better than chatting your friends online? Chatting them all at once, that's what.
 
An interface of an AIM group chat

We have plans to use the group chat for large-scale roleplay scenes between the player character Tourmaline and her friends, Cherry, EphemeralSmile and Sendaria. You'll get to experience this type of roleplay in the Terranova beta this fall. We're currently working on this as well as working on the writing as the story has significantly expanded since we built the first version of the alpha earlier this year.
 
We're a small indie game, so we were excited to be part of #PitchYaGame's "Top 40 Under-discovered Games" tweet earlier this week. If you know someone who would really love the nostalgia of Terranova, please share freely. Word of mouth is our best friend. <3

Want to do art for Terranova?

Huge thanks to all the artists who we've commissioned for the wallpapers. We've been really impressed by the artists we've worked with so far. More beautiful wallpapers will be coming soon in the future for you to choose your favorite as you're playing. Are you interested in being commissioned by us for Terranova and do cute, pastel magical-girl art? We're looking for an artist to work with on one of our in-game wallpapers. Please reach out to CJ via Twitter if you'd like to work with us.
 
Join our Discord!

We have a Discord for folks who want to chat, interact directly with us and get a sneak peek of the game. Join our Discord and say hello!
 
We'll see you in two weeks!
 
Your friendly devs,
 
CJ+Matt

illuminesce: (Default)
2020-08-04 01:56 pm

UI Polish

 Terranova has come a long way from its humble origins as a 48 hour game jam project. In addition to fleshing out the story and characters, we've also been hard at work building out the user interface. 
 
Today I want to talk about some of the subtle UI details I've been working on. I feel like these sorts of things are easy to overlook, but are important to making a game feel more professional. Some of these improvements are already in the latest version (alpha 3), the rest will be part of the next release.
 
Visual Effects
 
One of the places I added some extra vfx magic was in the browser when you load a new blog. Credit where its due: this progressive-rendering effect is directly inspired by the game Simulacra 2.
 
A window opening up a pixelated blog page

We decided on this effect not for the sake of being flashy, but because it reinforces the setting. Also, this effect only shows when you access a new blog for the first time, rather than on every single page. It proved to be too annoying otherwise. I think it's easy to go overboard when adding effects, and end up overwhelming or distracting the player. A light touch is best.
 
This was also a case where we opted for being evocative rather than 100% accurate. The progressive-rendering effect is not _really_ how websites loaded in 2004, but it does a nice job of evoking the "dial-up" mood.
 
On the other hand, the "flash of unstyled content" (where the text shows up first with no formatting before the rest of the site loads) has been so carefully avoided by web designers of the last decade that it didn't really register as nostalgia when we tried recreating it. It just ended up looking like a bug rather than a feature.

Transitions

Another bit of polish I added recently was smooth transitions between game sections instead of cutting directly from screen to screen. It required some careful code orchestration*, but I think it makes for a nicer experience.
 
Like visual effects, I think transitions can also be a good opportunity for storytelling or adding personality to a game. One of my favorite examples of this is Banjo Kazooie, which transitions between levels using a puzzle piece shaped "iris-out" effect. For Terranova though, we kept it subdued and used a simple crossfade.
 
Banjo entering a room, and the screen fading to black

A fade to black transition from one screen to the next

*This is a polite way of saying it was a pain in the butt to code and I cursed at my computer lots.

Keyboard Navigation and Shortcuts

One of my goals for Terranova is to make that the game is playable using only a mouse, only a keyboard, or a combination of both.
 
The main place you can notice this is in the chat window, where you can use the number keys to select an option, and the spacebar to type a reply.
 
A screenshot of an AIM chat
 
But I've also put a lot of work into making sure the rest of the interface has sensible keyboard behavior as well, even when it's not called out in the UI with explainer text. For example, you can use the tab key to move between buttons and windows, and you can use the arrow keys to navigate lists and grids. This is one of those "invisible" features. Nobody really thinks twice about it when it's there, but if it's not, it will likely cause some players a lot of frustration.
 
That's all for now! Until next time, what are some of your favorite game moments recently -- what little details stood out that made the experience better? Leave us a comment here, or talk to us over on our Discord.
 
Your friendly devs,
CJ and Matt
illuminesce: (Default)
2020-07-20 11:31 am

New, Original Art!

 Due to the very hard work of our fantastic artists, we're excited to announce that as of now, Terranova has completely new, updated art for our Limejournal icons, chat icons and wallpapers. The new art has really brought to life the game, and we can't thank you enough.


 
Getting durnk with your new friend.
 
The wallpaper we're featuring here is from the talented Coffeshere. Icons from Sharky and Natalie G. Jackson.  

The blogs have also gotten an update too, so now we are color coordinating each of the girls to a specific color (Tourmaline = blue, Cherry = red, Ephemeralsmile = purple, Sendaria = pink) so you can see at a glance whose Limejournal you're reading.

 

 
Reading Sendaria's Limejournal.

Thank you to Carolina H. Santi and Coffeshere for the icons.
 
There are two icons we still need art for, so if you happen to either draw gothic lolita fashion or 90's anime style, please get in contact with us.
 
Thanks!
Team Chatt (CJ & Matt)
illuminesce: (Default)
2020-07-07 09:53 am
Entry tags:

Terranova: Alpha 3 released

 Mabbees here,
 
Today's update is a brand new build of Terranova. It's full of even more bug fixes, new artwork, new additions to the story, and more! Notable changes in this release are:
 


New story chapters - our story now continues until the very end of 2003. You can ring in the new year together with your online RP friends. What's gonna happen in 2004? Check back in for the next build to find out.
 
New artwork - we've collaborated with artists to add new artwork to Terranova, with more planned for the future.
 
New sound effects - listen for that good old "door slam" sound for when your friends log out of chat.
 
Better saving - our previous alpha made use of auto-save checkpoints, but outside of that there was no way to save your progress. You can now save your game manually at any time from the start menu.
 
Better typing - play the game with your choice of mouse or keyboard (or both). Click or hold spacebar to type. Select dialogue options using your mouse or numbered hotkeys.
 
"Multi-tasking" - I worked on a big programming push for our code to be able to support multiple threads at once. There are a few parts of the game where we make use of this, and more are planned for the future.
 
Many thanks again to the kind folks who have tested our game along the way and offered feedback and bug reports. In particular, perroQuadrado and EllenNoir. Thanks you two, we're so glad to have your help!
 
As always, if you have bug reports, feedback, or you just want to hang out and talk about fanfiction writing or game development, we'd love to hear from you on the Terranova Discord.
 
Your friendly devs,  
CJ & Matt
illuminesce: (Default)
2020-06-23 01:33 pm

Doing the Homework: Research for Terranova

 Hello from your friendly dev, CJ!
 
You might have wondered where last week's update went. As I have a full-time job, I typically work on Terranova in the evenings and weekends. We're working towards a beta release and to free up one evening a week to work on the game, we've switched our update schedule from every week to every other week on Monday. 
 
For the latest updates and to say hello please join our Discord! We like it when people say hi.
 
Today, we'll be talking about research.
 
Terranova is based in the early 00's and is about roleplay culture, particularly on blogs and message boards such as LiveJournal, Xanga and the like. Typically, two or more people would participate in this "roleplay" where you played a character, either from a pre-existing work, or an original character (OC). You'd write stories together, each person taking turns. 
 
I participated in this fan culture back in the early 00's, and happened to save a lot of old roleplay logs from instant messenger chats and forum boards. Much of Terranova's writing is inspired by these logs. I read over them often.

 
 
One of the things I find particularly moving about these chats are how we'd weave very personal conversations as side threads at the same time we were writing. In this pre-roleplay log, I'm talking about a real incident where my friends and I went to a late-night karaoke place to sing for fun. Some guys sat with us without asking. They dropped hints that they'd like to take us home despite us refusing multiple times. We were sixteen at the time and we said so. They said they didn't care.


I was the kid in high school who was chipper and was reluctant to talk about negative things, so even being able to mention this offhandedly was such a gift. Someone I cared about acting protective right after I experienced something troubling validated my experiences and calmed me. These were the sorts of stories we wanted to bring to Terranova—the instant messenger box being a place of retreat and solace.
 
Terranova's story follows four teens—Tourmaline, Cherry, Sendaria and EphemeralSmile, each of whom I've written a bit about. Each of them has their own personality, their own victories and struggles that you'll discover as the story progresses. Tourmaline is the player, but also contains pieces of myself. 
 
Sendaria is a well-to-do kid going to high school in Japan, completely obsessed with shojo anime. I unfortunately was not huge into shojo nor was I as outgoing as Sendaria is, so over June and July, Matt and I will be doing...a bit of method acting. You'll have to wait for the next devlog update to hear more about that, though. ;)
 
For Cherry and EphemeralSmile, I wanted to move outside of my own white viewpoint to write, and for that I am eternally grateful for the fine folks who have generously offered their personal experiences. Cherry is a Puerto Rican who grew up in New York, and our good friend León contributed massively with his own stories growing up Puerto Rican in America. Thank you so much.
 
EphemeralSmile is a black cosplayer and lolita fan, and in researching the intersection of blackness and fandom I've recently been very moved by linakittylee's confession of "black geek girl struggles" on YouTube. Thank you for sharing something so personal. 

Though these are more recent papers, scholars have been examining the intersection of race and fandom such as Rukmini Pande, Bertha Chin and Lori Hitchcock Morimoto. I'm also grateful to them for perspectives on the current fandom when it comes to race. It helps me trace back some of the racist ideas the fandom has had and how it relates to BIPOC fans in the early 00's.
 
I'm hungry to get my hands on more references, so if you are BIPOC and have resources to share especially about fandom in the early 00's, please let me know. I'd love to read them.
 
This has been a process of self-introspection as well as outward discovery—and I'm really excited to write these characters. They're all very dear to my heart.
 
I hope they will be dear to you, in time.
 
Til next time,
CJ
 
illuminesce: (Default)
2020-06-08 10:24 am

Supporting Black Creatives + Terranova Beta Update.

 Hello, everyone! Tonight's devlog will be a short one.
 
Terranova Official Beta

Matt and I are currently working on the official beta version of Terranova. This means one step closer to release! πŸŽ‰
 
We're tentatively planning to release sometime in late summer/early fall. The alpha covers the story of Terranova from November 2003 to December 2003, and for our beta, we're planning on covering even more story from October 2003~April 2004 in addition to new concurrent chats and Limejournal support. The beta release date is tentative, as we'd rather release a good-quality beta that took a little more time to build, and we hope you feel the same.
 
Support Black Creatives

In the light of the Black Lives Matter protests and the outpouring of support for incredible organizations like NAACP and Save the Block, we're asking on our very tiny soapbox to consider supporting black creatives as well. There's a lot of talented folks out there, so if you're interested in following or commissioning someone, we suggest:
Look forward to new updates next week.
Take care of yourselves and each other, and stand strong, wonderful readers.
 
Your friendly devs,
CJ & Matt


(art of Isaiah by one of our talented artists, Dan Deschaine.)

illuminesce: (Default)
2020-06-02 03:00 pm

Code is a User Interface

Our focus in Terranova has been on how players will feel playing our game. For example, we've worked hard on the LimeJournal site, making sure it looks and feels good. It has to evoke the feeling of the 2000's era web, but it doesn't have to be an exact clone. In fact, we intentionally ditched some of the "period accurate" UI elements for more usable ones. (Janky and frustrating websites do not make for fond nostalgia).

 
Lately, though, I've been hard at work on code that won't matter one way or another to players. Code that's "behind the scenes"--because while it doesn't change the *player* experience, it has a big impact on the *developer* experience.
 
 
That's the topic for this weeks update: how CJ and I wrangle the stories we want to tell into runnable code, and what tools we're using to our advantage.

Early stages

Terranova began as a game jam project for Global Game Jam 2019. First versions of the script were written entirely in JSON code, so they looked a little something like this:

[
{user: 'CherryGoRound', message: 'hey'},
{user: 'CherryGoRound', message: 'what's up?'},
{user: 'Tourmaline', message: 'Hi!'},
{user: 'Tourmaline', message: 'How's it going? :D'},
]

It was a start. This gave us the chance to test out some gameplay quickly, without getting too stuck in the weeds. Since then I've replaced JSON code with our own coding language, and last week I completed what is by now the *third* parser rewrite. Each time I grumble and curse at my computer a lot (getting parsing code juuuust right is quite tricky) but each time is ultimately worth it for how much more productive it makes us in the long run.


Code is a user interface!

While the JSON format got us off the ground, it quickly became cumbersome. This kind of code is great for computers, not so much for humans. It's not easy to write a story this way, and not easy to go back and read or edit it either.
 
By using a custom language, the same conversation can instead look like this:

@CherryGoRound
> hey
> what's up?
@xXTourmalineXx
> Hi!
> How's it going? :D

SO much easier to read write and edit! Along the way I've also introduced new features to the language so that we can, for example, code for user choices:

choose
choice "What?" do
@xXTourmalineXx
> "What?" He raised an eyebrow in confusion. What was that boy thinking...
choice "Yeah, you'll be sorry..." do
@xXTourmalineXx
> "Yeah, you'll be sorry," Eytan said with a smirk at the Scavenger.

Or run multiple conversations at the same time

fork
branch do
run import("./effie-conversation.chat")
branch do
run import("./cherry-conversation.chat")

Code Usability Tips

This update won't be full-blown tutorial on how to roll your own language -- that would take a book rather than a blog post (perhaps another time). Instead I want to share some tips I have for making code usable, and some of the tools I've found the most helpful.

1. Make it Modular

An important problem to solve in using your own language is making sure you have a good way to get your custom scripts into your game.
 
One of the real gems to have come of the javascript community in the last few years is a tool called webpack. It's fidgety, and a real pain to configure, but it's done one thing incredibly well. It's made "polyglot" codebases 1000% easier. Best of all, you can write your own loaders for webpack to handle your own file formats.
 
I wrote a webpack loader for our language, which not only makes it possible to load our scripts into our game code, but also makes it possible for us to use webpack to load other files from within our script. This means we can break up our script into multiple chapters and write each in a separate file.

2. Use Syntax Highlighting
Syntax highlighting is a good way to confirm that what you're writing is being understood by the computer. I find that having real-time feedback while you're typing helps prevent a lot of debugging later down the road.
 
Our code editor of choice is Atom, which is pretty easy to extend with your own scripts/plugins. For syntax highlighting, I'm using a package called 'tree-sitter', which lets you highlight parts of your code based on the parser grammar. I found it a lot easier to reason about than using regular expressions, and a lot less duplicate work as well, since I already had to define the grammar.
 
(CJ Note: For me, who understands the basics of programming but doesn't have extensive practice, syntax highlighting was a godsend. It helped me visually proofread the stories and overall made me a more helpful contributor to our codebase. Thanks, Matt!)

3. Provide Useful Error Messages
Error messages. If there's one thing I've learned, it's that you'll be reading a lot of them, so do your best to make sure they're helpful.
 
For parsing our scripting language, I picked a parser-combinator library called Parsimmon. It's not the fastest, or the most "popular", but I picked it because it generally does good job of producing helpful error messages. For example if I forget the 'let' keyword on line 28:


27 |
> 28 | character-intro = do
| ^
29 | @CherryGoRound
Expected one of the following:
'choose', 'choose-all', 'let', 'run', EOF, a character name,

Another way I've found to do make errors more helpful is to use "fuzzy matching". For example, I wrote a syntax checker that warns me about undefined variables, and also suggests alternatives. So if I mistype...

Error: Variable "wrold-intro" not defined. Did you mean "world-intro"?

I can't count how many times I've had to double-take at error messages that tell me a variable isn't defined, only to realize the reason: I had a typo. This one feature took a couple minutes to implement, and will probably save me hours.

Conclusion

Remember, devs are users too. If you're working on a game, do what you can to make your user experience enjoyable and productive.
 
Your friendly devs,
CJ and Matt
illuminesce: (Default)
2020-05-25 01:56 pm

How I Write for Terranova

 Hello, CJ here! I'm the producer and lead writer for Terranova.
 
Tonight, I'd like to talk a little bit about how I write. I was inspired to do this by a friend who saw Matt and my session on Interactive Fiction and How to Write It at Pajama Con in early May and asked, "I wish you'd gone into more detail about how to build flow—how do you limit the choices to keep it manageable while giving people the freedom to express themselves?"

It's a good question, and one I didn't have the time to respond to in full, so I decided to make my answer a Terranova devlog and share it everyone! Warning: this is not a manual—just my own process of how I write and how I think about writing. I hope you find it helpful to writing your own interactive fiction!
 
Thoughts on agency versus story

In interactive fiction, the reader (or player) must have some kind of agency, or an illusion of agency. Typically, this is given in the form of choices, but it can also be given in the form of say, a text box where you type. I'm personally more used to multiple choices, so the examples I give will be for these.
 
I think of agency and story as two extreme ends of a spectrum. Think of it like the original classic Jurassic Park jeeps. To show the visitors the best of all the dinosaurs, they were literally on rails which meant that all riders were taken on a  set path and couldn't explore the park. Though boring for the visitors, this was a safe way to explore the park. 
 


Pictured: A safe and boring way to enjoy dinosaurs.

 
However, when the Jeeps  went off the rails the riders found themselves active explorers in the park—affecting the dinosaurs and being affected eaten by them.

 
Pictured: an exciting yet dangerous way to enjoy dinosaurs.
 
I see the players as the riders, and the story as the dinosaur. Agency in this case is the rail on the Jeep. The story appears more well-thought out and cohesive  when there are less choices for the player to make, but the tradeoff is that the player might find the story boring or not a game at all. The story can be immersive and customized for the player's experience if there are more choices, but often the story can appear weaker and not well-organized at the expense of giving the player more control.
 
So, do I want to tell a cohesive story more, or give players more choice?

When we first started thinking about Terranova, and even in development we talk a lot about agency and story. Currently, the game has three different planned endings and you will have to make choices between having the full story revealed to you over say, being a good friend. We have a general idea of where Terranova lands on the spectrum, and it's somewhere in the middle, leaning towards "Jeep on rails." 
 
It's a conscious choice we made, and I recommend to other game devs and writers to decide where on the spectrum your game lies. If you make a conscious choice in the beginning it's much easier to justify design decisions rather than being swayed by opinions or what are new trends.
 
Thoughts on writing for multiple endings

There's no possible way for me to keep track of multiple endings simultaneously while I'm writing, so I go through one pass of the story (exposition --> rising action --> climax --> falling action --> denouement) in its entirety first before writing the other endings. In Terranova's case, I plotted out, start to finish, what should be happening in each of these sections and what each of the actors are doing. I try not to get too attached the result, because if it's one of many endings, it's likely that there won't be a "canonical" or "true" ending. I then went through and asked:
  • What would this story look like if [main character] chose to do the exact opposite of what she did here?
  • Would that affect the story enough to justify writing a new ending, or just a branching path?
  • How significant is this choice?
In the case of significance, we want some choices in Terranova to be hard to make. Perhaps forcing a choice when the player wants to pick both, or knowing what the right answer is in that situation but desperately wanting to pick the other choice.

These questions help me figure out where to branch, and from one storyline can become two, and so on and so forth, depending on how much agency I want to give the player overall.

Here's an example of the branching technique for a short, five-minute game that has four endings (done in Twine). Notice that while the game still doesn't give the player much agency, it still reads as an interactive fiction because it has parts in it that diverge from the main plot.


Post-its are my friend

The last thought I have on writing flow in Terranova is that we're handling six different stories at the same time—your friends, Cherry, Sendaria and EphemeralSmile's blogs as well as the characters they control in the roleplay (Dominique, Hikaru and Isaiah). The player is Tourmaline, and though they have control over what they say in their blog, there are some posts that follow up a player post "written" by Tourmaline or Eytan for flavor. So, technically I'm managing eight simultaneous stories.
 
How do I keep them organized?
 
Post-its.
 
So, so many post-its.

 

Blurred because you have to play to find out what happens! ;)
 
What you're looking at here is an outline for Terranova, all on post-its. The long piece of paper is the writing for the roleplay of Terranova, and the short piece of paper is for individual character's blog posts. They're both plotted out on a monthly timeline, which shows which months these posts take place and color-coded as to whether the player has agency to affect the posts (blue) or the system generates the post-its (yellow and pink). This helps me follow storylines in the character's lives as it relates to the roleplay, and how each reflects back onto the other.
 
The beauty of post-its is that when the writing changes directions, the outline can adjust by moving the post-its or changing colors. We've adjusted this board multiple times already and use it as a center point for our discussions around story.
 
It also serves as a good reminder of how much writing I've done and how much more there is yet to do! I'll make marks on stories I've done, stories that have yet to be edited, and stories that are in the game. It's very helpful to have a "living document" that I constantly look at while I'm writing.
 
And that's my overall process on how I balance agency with story, decide where to branch the story points and, once I have multiple stories, how I keep track of them all.
 
I hope this has been helpful to those of you interested in writing your own interactive fiction. I'm curious if any other game devs out there have different styles of keeping track of story plots that they'd like to share!
 
If you haven't already, check out our Discord where we're talking game feedback and design.
 
Happy devlog Monday and keep staying safe.
 
Your friendly devs,
CJ and Matt

illuminesce: (Default)
2020-05-18 02:24 pm

Terranova: Alpha 2 Released

Many thanks again to everyone who has helped us with bug reports and feedback! This version is a small improvement over the build we demoed this weekend on Twitch.

In case you missed it, you can watch here on Twitch.

And here's what's new in this version:
 
Bug fixes
  • Fixed an issue that sometimes caused the internet browser to crash
  • Fixed an annoying bug  that occurred when dragging windows around
  • Fixed dead links
This release is a lot more stable than the previous one, but it's still an alpha release. If you notice bugs, we would very much appreciate hearing from you about it in the #bug-reports channel on the Terranova Discord.
 
New Content
  • Added some new dialogue options in the chat
  • Updated LimeJournal blog backgrounds
As we mentioned in our last post, we're looking for artists to help us build out some of the visual content in Terranova. The work is paid, i.e. if you have pre-existing fanart we use, we'll pay you a commercial licensing fee. If we commission you for original pieces, then we'll pay the commission fee + a commercial licensing fee.
 
We'd very much like to feature artwork by LGBTQIA+ artists. Please contact CJ on the Terranova Discord or on Twitter if you're interested!
 
Your friendly devs,
CJ & Matt
 
illuminesce: (Default)
2020-05-11 09:54 pm

Terranova Livestream this Weekend & More

 To those who have downloaded the alpha version of our game...thank you! We have had over 100 downloads of the alpha version of Terranova, and we're simultaneously floored and honored to have so many people interested in this little game about roleplay. To those who have already given constructive critique in our Discord, a HUGE HUGE thank you to you. For those who haven't our door is open!

Three important announcements—we're livestreaming a playthrough this weekend, we're looking for LGBTQIA+ artists to contribute to Terranova (this is paid work) and we have a list of currently known bugs just in case you encounter them in-game. So let's get started!

Terranova Alpha Livestream on Twitch 😎



​

On Friday, May 15th we'll be livestreaming a playthrough of the alpha version. We'll talk about building the game and give you a chance to experience Terranova​ if you haven't already. We'll be providing, to the best of our ability, witty commentary.**

Livestream time is:
Friday, May 15th:
  • [PST] 6PM~8PM
  • [CST] 8PM~10PM
  • [EST] 9PM~11PM
Saturday, May 16th:
  • [JST] 10AM~12PM

​Come join us on Twitch!​

** DISCLAIMER: Depending on how much caffeine either of us have, the commentary may or may not be witty.

 

Calling LGBTQIA+ Anime/Fandom Artists πŸ’œ




​

The current build of Terranova still has placeholder original/fanart of some popular titles from the 90's​. While this is nostalgic, some of these pieces are uncredited and unlicensed, and
so we're looking for artists to provide us with 90's anime-esque desktop backgrounds and Limejournal icons for all our characters. Since this is a game adjacent to LGBTQIA+ culture, we're looking for artists who identify as this to help contribute!

The work is paid, i.e. if you have pre-existing fanart we use, we'll pay you a commercial licensing fee. If we commission you for original pieces, then we'll pay the commission fee + a commercial licensing fee. ​

Please contact CJ on the Terranova Discord​ or on Twitter​ if you're interested!

Bugs πŸ›
Known issues & workarounds

Because this is an alpha release, it's still a little...buggy. ​Thank you to people who have already given us feedback on bugs in the game! These are the current issues that we know of and their workarounds. We're currently working on fixing on these. These don't happen all the time, but if they do​, you can try the solutions below to continue playing.

  • Windows continue moving after you release your mouse (on drag). This results in a window that "sticks" to your mouse.
    • Workaround: Close the application and re-open

  • The browser crashes after you restore the window from being minimized.
    • Workaround: Press the "Home" button on the browser and it should restore

  • The icon picker doesn't respond
    • Workaround: Click again and you should be able to select icons


Fixed issues

​These bugs are fixed in the latest release.
  • Browser crashing after you post to your personal Limejournal



​​

Thank you again for your support and we're working on the next release of Terranova! Stay tuned, and we'll see you next Monday night JST.

Your friendly devs,
CJ & Matt
illuminesce: (Default)
2020-05-06 08:57 pm

Play the alpha release of Terranova on itch.io!

Terranova is a game that follows the nostalgic roleplaying culture of the late 90's and early 00's, happening primarily on "LimeJournal," a blogging platform that you use to write stories together with friends. It focuses on a year in the life of Tourmaline, a high school student and a cast of colorful friends—EphemeralSmile, who is your friend from elementary school whose friendship you're rekindling, Sendaria​, Effie's friend and a fellow high schooler living the dream in Japan, andCherryGoRound​, the newest roleplayer who just applied to your roleplaying community. We started Terranova as a prototype at Global Game Jam in 2019, and after a year of hobby development, we're proud to announce our official alpha release of Terranova.


 

​​

 


The full game runs from November 2003 to February 2005, and the alpha release is for November 2003~December 2003 only. From now on, the game will be released in installments of a few months at a time. We're currently developing January 2004~March 2004, and will announce when you can expect it shortly. As for the alpha release... it is a bit buggy, so we request your feedback to help us improve the game as we move forward!

​We have a private Discord for those who want to chat and exchange ideas with us—if you're interested, please join the Discord here​.

We post updates every Monday evening JST. Follow CJ on Twitter​ for notifications.

​For those of you tuning in from Pajama Con 2020—thank you so much for coming to our session, "Interactive Fiction and How to Write It!" We really enjoyed presenting and answering questions from you all. For those of you who missed it, here's a link to the stream.​

We hope you enjoy our game, and from both of us—

​

From your friendly devs,

CJ & Matt

 
illuminesce: (Default)
2020-04-21 08:38 pm

Character Profile: ephemeralsmile

What is Terranova?

Terranova is an interactive fiction game set in the early 2000's and revolves around Terranova, a post-apocalyptic roleplaying community on "Limejournal." Follow the lives of [personal profile] cherrygoround[personal profile] ephemeralsmile and [personal profile] sendaria as you befriend them, write stories together with them, and discover yourself in the process through a rich world of storytelling, love and friendship.

Character Profile: ephemeralsmile

ephemeralsmile, also known as Effie, is your writing buddy, your best friend and your partner-in-crime. You and her went to different middle schools but since she transferred to your high school you’ve been making up for lost time. She’s so easy to talk to.

Even though making the Terranova community was originally your idea, she was the one who built it on Limejournal. She says she’s a vampire and to be honest...you sort of believe her.

Effie loves sewing, making cosplay outfits and writing. She’s a fan of lolita fashion, Japanese rock stars and everything gothic. You like different things, but you share a common love in writing. She’s your enabler of wacky hijinks and you’re her cheerleader for crazy ideas. She sometimes sells herself too short, though. She's overly critical of herself and her work and sometimes you wish that part of her just...wasn't there. Maybe she'd be happier without it.

Chat with Effie

Recently, she’s met someone who goes by the name Sendaria. She just joined your roleplay group. The two of them seem really close, especially because they both love Japanese fashion. They talk all the time online. Sometimes you worry about her slipping away—again.
But that wouldn’t happen, right? You are best friends after all...
---

I hope you look forward to meeting [personal profile] ephemeralsmile and the other characters soon!
Want to join our Discord for more updates like this? Join us!
CJ & Matt