State Of The Game #2

by Ron Gilbert
Aug 24, 2015

It's time for another State of the Game post. The last one was in May, and it's now the glorious month of August and a lot has happened. Part of our commitment to you when doing the Kickstarter was to keep everyone informed on our progress and adventures.

Making games is Fun. I can't imagine doing anything else with my life, but it's also stressful, exhausting and can be demoralizing. It can wake you up in the morning with vigor and excitement and send you to bed with a sense of doom and defeatism. If there was one emotion to describe my mental state at this stage of the project, it would be "overwhelmed."

But that's normal.

Pre-production is the exciting time of a project. Everything is possible and your only limit is imagination. You design and create and dream with reckless abandon. It's the way it has to be.

Then you enter production, the stage we find ourselves in now. It's the stage where the mind of a dreamer crashes into the mind of a realist. You budget and schedule and track every detail as it oozes its way through the process. You become terrified with what you've designed and fight the desire to just hack limbs from the body to cure a disease.

But that's normal.

How We Got Here

Despite the doom and gloom of my opening, the project is in a really good state.

We've come a long way in the five months since I first got the scripting language working...

And where we are today...

A fully functional adventure game and adventure game engine with final art and puzzles and funny dialogs that are showing the promise of what we set out to create: an all new classic point & click adventure game.

The big news over the last three months was the addition of Mark Ferrari to the team. When Gary and I did our Kickstarter, we didn't know how much money we were going to raise, so we described an art style we knew we could do with just Gary as the sole background artist and animator. It truly invoked the era of Maniac Mansion.

When Mark became available, we both knew we had an opportunity to move the art forward. We raised more money than we thought and Mark becoming available full time was an opportunity we couldn't pass up. But it posed some challenges.

The animations needed to change. We're happy with the overall style of the characters, and as we've stated several times, we're keeping with the large bobble heads, but it's been a challenge to figure out how to render them to fit with Mark's art.

Mark is a master of lighting. If there is one thing that defines Mark's art, it's his lighting. I spent an hour on Skype with Mark, him asking questions about the direction each room faced and where the setting sun would be so he could capture the glow of the dimming evening just right. Mark wasn't satisfied with "It's early evening, the sun is setting somewhere over there." He wanted to know exactly where the sun was so he could draw each room with the correct light coming from the right direction.

"I don't think anyone will notice", I said.  "Oh yes they will," Mark replied and I think he's right. Maybe not consciously, but the light being right makes things more real and believable. You don't notice it, but you do notice it. Details, no matter what they are, are like that. You don't notice, but you do.

The art is going to be a lot more work than originally planned.

Wiring of the rooms during pre-production went well. David is a machine with that stuff. He is amazingly detail focused and wiring the wire frame rooms up during pre-production went pretty fast.

We cut 25 rooms from the game and the game feels better for it. That wasn't an easy job, but it was a necessary job.

We've added two major puzzles to the game as a result of playing and realizing we need to gate players into some key (and exciting) areas.  It will help significantly with the flow of the game.

When the project began, I was faced with a big decision. Do I use engine like Unity, or do I write my own engine?

Countless game devs will tell you to never write your own engine. It's a fool's journey, and I agree with them, except for two reasons:

1) I like building engines. I've been doing it my whole career (and before that) and it's fun.

2) This will be the 4th adventure game engine I've built. There wasn't a lot that was unknown to me, and it felt like a safe journey.

I also enjoy the power of being able to change the engine as I need; adding new features and optimizing (minimizing) repetitive game programmer tasks.

If David or I are writing the same code over and over, or a seemly simple task is taking three lines of code, rather than one, I just change it.

Where We're Going

We're into full production right now. The entire game has been wireframed and 90% of puzzles are functional. We've been able to play through the whole game and get a feel for the world and the puzzles. It's good stuff. I am very happy with the design, story and characters. It feels like a true classic point & click adventure.

That's both a good thing and a bad thing.

I've shown the game to a few people, and they immediately start trying to optimize the UI. "Do you really need verbs?" or "Can all the touchable objects in the room glow?" Or they worry about new players. "Some kind of pop-up help would be nice here." or "How are you going to on-board the user?"

No, no, no. I keep saying. This is a classic point & click adventure game. It's going to turn some people off. We know that, and we don't care.

We're not building a modern adventure game with all the rough edges sanded away and a safety net, ready to catch even the smallest misstep or endless rewarding of the player for the completion of mundane tasks. I know a lot of modern players want to constantly be told how great they are and how amazing they're doing. This is not one of those games. Success is rewarded with the greatest reward of all: New art. Hints are given through well crafted dialog and feel like a natural part of the story. Players are introduced to the game by a slow escalation of puzzle difficulty and a well focused story.

I spend a lot of time doing budgets and schedules. One of the keys to a successful production is knowing everything you need to do. Lists. Lists. Lists. Get every task into a list and start marking them off. You become a machine. But not a machine without feeling. As you build something, you start to see where it's not working, when that happens, don't be afraid to change what you're doing. Don't slavishly follow the lists off a cliff. If something isn't working, redesign it and then update the lists.

David and I are cranking away at game programming. It's exciting to see final art, puzzles and dialog go in the game. At the end of each day, the game feels more done. David does most of the actual game programming with me doing the dialogs and tackling game programming where I know there will be engine changes or features added. It's easy for me to do both at the same time.

We signed a deal with Microsoft to bring Thimbleweed park to the Xbox One. We're very happy about that. We really wanted the game to be on console. It's a whole different audience. Microsoft has a three month console exclusive and after that we'd like to port it to the other consoles, but our ability to do that will depend on getting the money to pay for it. Either by doing a deal (unlikely with the exclusive in place), or the game being successful enough that we can afford to pay for the ports ourselves, or by raising the additional investment. Porting to console isn't something that can be crowdsourced, because none of the console makers have the ability for us give away keys to backers.

Next month we'll start to delve into music. I wanted to get the world defined first, so we know what needs music. Music in adventure games tends to be about where you are, not what you're doing. The area of the game gets scored, rather than events. There are obviously exception for big events or plot altering puzzles, but it's mostly ambiance. I'm looking forward to working with Steve Kirk and defining the sound of Thimbleweed Park. (Note to self: Email Steve and let him know we'll be starting next month).

Also thinking about testing. Thimbleweed park is going to be a big game to test, given three Kickstarter platforms, mobile, and now console. The plan is to bring on a lead tester who will create test plans and manage the other testers. We've budgeting for the lead, plus four paid testers. We'd like to get the lead started (part time) early October, get them acquainted with the game and start building test plans. I don't think any meaningful testing will happen until Jan. There is also the danger of starting testing too soon and overwhelming the programmers and artist with bugs while they are still adding pass one content.

What Scares Me

As mentioned above, the animation is taking longer than we thought to lock into the right style to fit Mark's backgrounds.  We have yet to put any final animation into the game and this scares me. Once we figure out the style, I'm sure it will turn into a well oiled pixel cranking machine, but we're already one month behind and that could stretch into two. In animation, most of the Kickstart rewards are falling on Gary to do or coordinate. Those won't ship for a while, but they are taking time right now.

The backgrounds are taking longer than expected. We were hoping Mark would have everything done first pass by January 1, and would then enter a polish/fix stage, but realistically I don't think he'll be done until March. The backgrounds are stunning, so in a odd way, I'm OK with them taking longer, but I do worry about budget and it affecting the ship date. So far, those two issues aren't a problem, but we need to keep an eye on them so they don't become one.

Saving games still scare me.This is something I should have figured out months ago. The issue isn't a matter of how to store the data, it's way more complex than that. There is a lot of data to iterate through and save off in a way that can be reconstructed. Doing save games is harder today than it was back in the SCUMM years. Back then we didn't have to worry about patching. These days, the save game has to survive the game being patched and that can mean resources being added or removed.

Managing all the translations and the English voice recording is going to suck up a lot of my time when that rolls around. It also means that we need a script lock sooner than I like. The entire script needs to be locked on April 1. That scares me.

My biggest fear these days is how much time I spend NOT making the game. Writing these blog posts takes hours each week, plus it takes me around two hours to record, edit and post the podcast. These things aren't free. I think they are worth it and I enjoy doing them, but it cuts into the hours I spend programming and designing.

Budgeting and scheduling also takes several hours each week. I'd love to have a full time producer that could handle this part of the project, but it's all falling on me right now. It's tempting to just skip budgeting and scheduling as they often don't feel like "real" work, but the sense of accomplishment is short lived. You need to know where you are and how long it's going to take to get there. If you don't, you're surprised to find yourself out of time and money. Game schools should require proficiency in scheduling and budgeting just as much as level design or 3D modeling.

I feel good about the design and the progress we're making on the tech side. Of course, all that could change in three months.

Stay tuned for next quarter's nail biting episode of "State Of The Game".

- Ron



Munenori - Aug 24, 2015 at 13:25
Thank you Mr Gilbert,
for sharing such deep insights in the developing process and the future outlook.
It is really great to read each of your blog posts, it gives me the feeling of standing next to you and looking over your shoulder while you are working on your next great adventure.

Derrick Reisdorf - Aug 24, 2015 at 21:14
Creepy.

Patrik Spacek - Aug 24, 2015 at 13:31
Making video games with or without money have same challenges and deadlines. It can be fun in the beginning and very stressful in the middle. Its nice to see your part of work, but if you imagine everything what needs to be done for final version it brings up a huge headache. The advantage of money is that people stuck with you doesn't matter what happen and they are motivated to finish it.
I wondered many times why Will Tiller had so many troubles to pass Kickstarter, even just small budgets. He made lots of good adventure games with very good art quality. ..well...Budget suck same way as volunteers :o) JK
At the end, you are all progressing well, and I am sure you will earn some good $ when its released, then you can afford all you need for another game.

Natalija - Aug 24, 2015 at 13:35
So you want to say that there won't be blogs anymore huh?! We don't care if blogging takes you 6 hours! WE WANT THE BLOGS!

Soong - Aug 25, 2015 at 05:43
I really hope this is supposed to be a joke.

Jonny - Aug 24, 2015 at 13:36
Great stuff.

Unless it turns out to be another coin collecting endless runner, for business reasons.

Michael Specht - Aug 24, 2015 at 13:37
"No, no, no. I keep saying. This is a classic point & click adventure game." Thanks, Ron.

scott32 - Aug 25, 2015 at 01:40
Yeah, "polished" is great... but not too polished, please!

I'm still hoping for an option to make it EGA/C64/crappy looking!!!

peterszky - Aug 24, 2015 at 13:44
"We know that, and we don't care."

Hell yeah! Reminds me of Millwall supporters chant: http://www.youtube.com/watch?v=coUd-AaLkjQ

LichiMan - Aug 24, 2015 at 13:51
Thanks a lot to take your time to write all this.

One of my favorite parts is:
"No, no, no. I keep saying. This is a classic point & click adventure game. It's going to turn some people off. We know that, and we don't care."

I think Monday's post are enough if you need more time to spend on the game. We really appreciate them but the game is the real thing.

Thanks again. And keep it up!

kova - Aug 24, 2015 at 14:02
BOOM

kova - Aug 24, 2015 at 14:03
i really can't express myself..

smartypants - Aug 24, 2015 at 14:03
Saving games is easy: Just store all state variables in a big key-value dictionary and then serialize it to the disk.

Arto - Aug 24, 2015 at 15:33
Can't be really big. We have only 1.44 MB on save disc.

e - Aug 24, 2015 at 14:08
Listening to the podcasts is fun, but is it really necessary to do an episode every week? I'm sure that we could settle for a monthly thing, or even just the blog posts. Seeing the occasional glimpse of new art every now and then is rewarding enough.

We know that development is well underway and the project is in good hands. And it's looking like a future classic already. Great work! Take your time, we can wait. We've unconsciously waited for 20 years, after all.

Peter Campbell - Aug 24, 2015 at 17:49
Yeah, I think changing the podcast from once a week to once every two weeks is a pretty good idea.  As Gary Winnick has said his last few podcasts, he's doing the same stuff this week as the previous week so there's not really a whole lot new to say lol.

Derrick Reisdorf - Aug 24, 2015 at 21:17
I think they do a weekly standup anyway, so Ron just decides to record them. The editing takes a little time of course.  Maybe he can offload that onto some redheaded intern or something.

Soong - Aug 25, 2015 at 05:45
I agree, having a podcast once a month would be perfectly fine. I would even be ok with just the blog posts. I enjoy reading. :-)

Soong - Aug 25, 2015 at 10:17
By the way, I really enjoy the podcasts.  But if it takes up that much time, it might be better to cut them.  Just making sure that it doesn't sound like I don't appreciate what you do. :-)

DrJ - Aug 25, 2015 at 09:13
yep

Man with a duck - Aug 24, 2015 at 14:09
Whether the art fits marks backgrounds....... If you somehow took the style of FM Towns Zak McKracken and combined it with that of Maniac Mansion. But personally I think the big headed look now fits very well with the backgrounds.  I didnt feel that way first. But I accepted it over time.

Oh, and here is a link to Zak McKracken on the FM Towns:
https://www.youtube.com/watch?v=dt7AYqdoWXY

Christopher Griffin - Aug 24, 2015 at 15:02
I had never seen that port of ZM before, it looks decent!  Seeing the intro again reminded me:

*Ron, please make someone say: "AIEEEEE!" at some point in the game!*

Yehuda - Aug 24, 2015 at 14:10
Thanks for the detailed update!

It'd be great if you would open source the engine.

With regard to data saving, one way to do it that I think works well would be to have encoder and decoder for every data type (basic, structured). When encoding that type, prefix it with the following fields: current version of the decoded type, minimum version needed in order to read it, and total number of bytes for the encoded data (which will be calculated automagically when encoding).
I'm not sure how this would be done with squirrel, but you could do it with overloading encode/decode functions. Then you'd do something like:

struct buffer {
  int total_bytes;
  int cur_ofs;
  char *data;

  void *reserve(int num_bytes) { ... }
};

#define ENCODE_BEGIN ...
#define ENCODE_END ...

void encode(int i, struct buffer  *b) {
  ENCODE_BEGIN(4 /* cur version */, 2 /* min ver */, b);
  void *p = b->reserve(sizeof(int)); /* not safe, just for the sake of example */
  *((int *)p) = i; /* not portable! */
  ENCODE_END(b)
}

Once defined the basic types , we can use their encoders in other types:

struct high_score {
  char *name;
  int score;
};

void encode(struct high_score *h, buffer *b)
{
  ENCODE_BEGIN(1, 1, b);
  encode(h->name, b);
  encode(h->score, b);
  ENCODE_END(b);
}

etc.

Christopher Griffin - Aug 24, 2015 at 14:50
This has come up before -- it's actually not really about the storage of the data (Ron stated this in his post).  It's about how the game is script-driven, and with scripts come states.  It's not just "Oh, player has the flashlight."  It's "Oh shit, player has the flashlight; which was removed from the basement, and has been shined on the dark bushes, which the librarian commented on in a dialog, etc"

DrJ - Aug 25, 2015 at 09:23
well explained, so one way is to simplify saving. Some game states are not interesting. Perhaps the game needs to "know" when it's save to save... hm, so when saving and reloading we jump back to the nearest save point before "save" was pressed. If they're fine grained enough this might work.

Christopher Griffin - Aug 25, 2015 at 12:02
Yeah the periodic scene save could work.

If I were working on a save format for a game like this, I think I would be looking at an XML format that had each entities' states (i.e. Inventory, dialogs, scripts, characters' inventories, etc.) serialized into it.

If an area, character, or item was cut/replaced in the game, the XML node(s) governing them could be ignored (despite hanging around in the save file).  When a new version of the game is launched, it would need to migrate any modified items' nodes into their new nodes with the appropriate key/value pairs relating to that object.

Derrick Reisdorf - Aug 25, 2015 at 23:31
I think Ron said he's considering open-sourcing the engine. I imagine the save state will be structured as a big fat stack of some kind.

entropy - Aug 24, 2015 at 14:14
To make it short: This all feels soooo damn right!

Thanks to all team members for taking the time to
write these wonderful blog posts - very appreciated!

And, after all, thank you for taking the challenge to
make a new classic adventure!

Daniel - Aug 24, 2015 at 14:22
Thank you for keeping verbs!
I've seen good arguments for removing verbs, but there's one question that kills them all. Do verbs make for better puzzles? I think so.

Example 1: Monkey Island 3. You get stuck in quicksand. You try everything and there's nothing left you can do. It turns out you need to blow on the balloon. There is no "blow" verb, so you talk at it. It's obscure, and I'd cry foul except that you're stuck in one spot. The solution is funny and makes sense.

Example 2: Broken Age. You get attacked by a snake. You know you need it for something, but all you can do is blow a horn and the snake goes away. It turns out the solution to the puzzle is to do nothing. Boo! Bad form. I'm not going to get trained to sit and do nothing in every game I play in hopes that the problem resolves itself. Verbs would have served for a better solution to this 'puzzle.'

Lennart - Aug 24, 2015 at 14:27
Don't worry about April, look where you got in 8 months. You managed to get the Band back together, and since you already met Steven Spielberg there was no need for idiotic car chases. What am I saying... The game looks right on track. With the puzzles done it seems there is little that can go wrong at this point.
Also: I said it twice before. Mark's lighting is very noticeable! It makes you want to be in the scenery. You couldn't have wished for better artists.

oldtaku - Aug 24, 2015 at 14:28
Thanks for the update - I think we trust you'll get the game made, no matter how long it takes!  I don't mind delays at all with this sort of transparency - hell, almost every game project on Kickstarter is late, it's just whether they'll admit it or not.

On the saves, this is something we have to deal with in our firmware (user settings/counters, etc in NVM).  What works out pretty well for me is: always, always have a version up front, and always increment the version when it changes (okay, obvious to most people, but that's key...);  If it's a binary struct save, never remove things from the struct or repurpose positions, only add so positions are always the same across all versions - that's crucial.  On load, check the versions, and if you're going from v12 to v13, do the specific massaging you need of any values. If you're going from v11 to v13 do the v11 to v12 massaging and then the v12 to v13 massaging. This even works going backwards versions (if someone backs out a patch) thanks to never changing the position of things in the struct.

Now if you're using something more modern, like JSON or just flat key/value pairs then it's even easier - just never reuse a key name for something different (but never throw out deprecated ones easier, in case you need to do go backwards).

We're up to NVM layout 45 for one of our years old products which keeps accumulating options and obsoleting others - the only problem we've ever had is when someone forgets to add the vN to vN+1 massaging code - and that was caught in test.

Zarbulonian - Aug 26, 2015 at 05:14
Said "masaging" is better known as migrations in the DB world.

Alex Stevenson - Aug 24, 2015 at 14:31
Great update.  Thanks so much for the regular updates - I know it takes time to write them but they are very much appreciated, and the expression of your concerns is also invaluable reading; I have written games before (long time ago), and it's fantastic to see the entire process being discussed in so much detail.

Andrew Herron - Aug 24, 2015 at 14:31
It's interesting that you say console makers don't have the ability to give away keys to backers.

I wonder how the yooka-laylee team are doing exactly that then?

Lennart - Aug 24, 2015 at 14:40
In case anybody didn't notice:

The new Humble Bundle is Humongous!

berlincount - Aug 24, 2015 at 14:42
Thanks for the update :) the regular podcasts made something happen that I heard your voice in my head while reading it - right along with intonation and flow. I think it's good that you're taking the time, and I certainly don't feel it wasted at all. You'll get there and I consider the trust well placed - I'm happy to feel part of something you love doing. Keep up the good work, and say hi to the guys!

Zombocast - Aug 24, 2015 at 14:50
Thanks Ron, you've addressed every concern I've been wondering a out for month's, except one. I'd love to see David Fox, Mark Ferrari, Steve Kirk on the credits on the next trailer! As for the hint system, It's a shame we can't just ask our "shriveled talking vodoo head" for hints. Guess we'll have to talk our way out of trouble. Not Ransoms strong point

Jonny - Aug 24, 2015 at 14:50
Thank you for all!

Christopher Griffin - Aug 24, 2015 at 14:56
I know some of us have said it a million times, but we're glad that you share so much with us, Ron.  That being said, though, if it stresses you to cut a largish chunk out of your time to produce the additional meta content about the creation of the game, please do not feel pressured to keep up such a rigorous updating schedule.

Go back, review your "promises", and do that as a baseline.  If you didn't promise 3 updates a week, a stand-up meeting podcast, etc. -- then don't sweat it, feel free to cut back!  I have to be honest, I read EVERY post -- but I sometimes skip the podcasts, as they are just "I did this" type of meetings.  Are they relevant?  Sure.  Are they super-informative?  Not really.  There is far less content in them (as far as I am concerned) vs. a nice juicy blog entry with code samples.

If you aren't planning a documentary after the fact, then you are putting way too much time into video editing.  Just give us a raw video without any narration or cuts.  I'm fine with raw materials, as long as I have a 1-sentence context setup. :-)

Ron Gilbert - Aug 24, 2015 at 15:04
There is no video, it's just audio. Not a lot of editing happens to the podcast, but I am forced to listen to them three times. First when recording them, then to make any edits (removing spoilers and flat-out mistakes), then a third time to make sure it's OK. That alone is 45-60 minutes. Then I have to upload them to sound cloud, make a post and do a quick skip-listen. It's not a lot of work, but it adds up, even for the bare minimum.

Again, I'm not complaining.

If your planning something like this, it just important to know, this stuff doesn't come for free. Documenting a process is fun, but so is documenting the documenting of the process. People often forget that part.

Alessander - Aug 24, 2015 at 18:28
Ron, while I really enjoy reading and listening to your team (I never miss a post), from my side, it's ok if you reschedule these things.

Also, would you write a book on making games? I really need to learn about budgeting and scheduling in general, and learning from your experience in doing games would be awesome.

(Did you already write a book? I found some books having "Ron Gilbert" or "F.- Ron Gilbert" as author on Amazon; can you tell me the titles of the books you wrote, if any?)

spiffy - Aug 25, 2015 at 02:31
There was a book by him in the Phatt City Library.

Mike McP - Aug 25, 2015 at 20:14
I probably enjoy the blogs as much as I'll enjoy the game.

For me, it's like watching an episode of 'How it's Made' where they show you how garden rakes are made: sometimes the process is a more interesting than the product.  I think it's awesome and scary how we've grown to expect things to magically appear and not understand the process and hard work behind even the dumbest things.  I'm by no means slamming the game, because I haven't looked forward to a game this much in years, I just REALLY dig the blog.

Christopher Griffin - Aug 25, 2015 at 11:08
My mistake, I was referring to the video posts on the blog (and the trailers, etc).  I was just running together my thoughts about the podcasts, and the other media that is shared to the blog.

I'm happy with whatever I get (in terms of content posted here), and I promise not to bitch if you don't have time to do it or need to work on the game in lieu of blog maintenance.

Paulup - Aug 24, 2015 at 19:10
I'm the opposite -- I love the podcasts the most and they have the most relevant info to me, and I'm not that bothered about code samples.

The other ones I really like are artwork posts and video gameplay example posts.

Franzy - Aug 24, 2015 at 15:12
Such an insider's view on how a game is born and grown is so interesting...
I'd say I don't care if the game is delayed by a month if that keeps Ron sharing it with us.
This blog has become one of my favourite pages.
As some say, it's not about the destination, it's about the journey!!!!

Dan - Aug 24, 2015 at 15:19
I quite believe that the blog entries generally take hours of work during every week, besides you additionally have to read all the comments and occasionally respond to one. Therefore I would fully understand a decrease of the blog update frequency.

PS: What about asking Malcolm for making an occasional contribution to the blog? Maybe he is interested in writing a blog entry regarding his subtasks.

Arto - Aug 24, 2015 at 15:24
This has been the best blog post yet.

"I can't imagine doing anything else with my life, but it's also stressful, exhausting and can be demoralizing. It can wake you up in the morning with vigor and excitement and send you to bed with a sense of doom and defeatism."

I try to keep this short. I am an Art Director and experienced web programmer, and this quote pretty much describes my work. I love it, but it can be exhausting. Also the parts about budgeting, planning and own promotion fit my experiences. They are important, but take way too much time from the actual doing. I would love to concentrate just on creative work, but it's impossible. But, as budgeting and scheduling is a big part of creative process, I find the outcome is often better, if one person is responsible for budget and schedule as well as creative direction. With web projects, I like to do the budget, creative direction and base programming, as this will ensure that the project will be predictable, flexible and delivered on time.

Funny thing is, I was really kicked into my trail by Lucasfilm Games. Mainly by Maniac, Zak, Indy 3, Loom, MI, MI2 and Fate of Atlantis. It started with Zak. So... thanks guys :)

Can't wait for TP. You're absolutely correct with the new art being the reward. Haven't experienced the sense of accomplishment since Lucas games with new location presented after completing a puzzle. Passive entertainment (movies) can be easy to consume. Active entertainment can't be easy to be entertaining. Be it a amusement park ride or a game of puzzles.

arvenius - Aug 24, 2015 at 15:56
Thanks for the update and greater scope, it can be easy to get lost in details but posts like these help to bring back the big picture.
I am with Christopher here and dont care too much about the podcasts, mostly because I like to waste hours uh mean spend my breaks in the office with catching up on stuff and its much easier to read a post where you can be easily interrupted and continue than to listen to a podcast (in a noisy office).
I know the youth doesnt like to read and want it all on youtube, but your audience is older anyway ;).

On a completely different topic:
Thanks for posting about Caren and the tangled Tentacles. It comes from a demoscene background (which means it will be completely free, guys!) and I happen to like those folks and stick around them a lot. And an audience like the people on here is exactly what those 3 guys need to keep on being motivated. Also make sure to visit at least one demoparty in your lifetime if you havent already - theres always one caring about your favourite platform of all times (which I suppose is the C64 but even if you would be into Speccy or Javascript-Demos...).

Thank you Ron (and Gary, David, Mark and everyone making this possible):
You made me happy when I was but 7 years old and you still make me happy now (25 years later), so I guess thats something. Oh boy, this is gonna be so great!
And remember to never pay more than 20 bucks for a computer game (I actually paid 25, but 5 of that is only for absolution of my childhood sins ;).

Davide - Aug 24, 2015 at 17:06
Very nice dev diary post, thanks. :)

Regarding the savegame problem..
I think the multiple format solution suggested above is a good one, with some additional details.
I used that in a game that was released in early access and which was updated in a whole year with new features
and changes. Players uploaded more than 16K items on Steam Workshop and we didn't have
any compatibility problem between file versions.
Ok, we used it for our level/items editors, and formats naturally fits to them,
but I don't think it's too far from a savegame actually.

Pratically, you will define a class which holds the code for loading the savegame (that is, a format class);
then, in the next update, you will define a new format class (you will keep the old version class).
You will define a new class for each new format, and you will keep all the code to load a savegame for every format,
not just the last format version.
Of course, you will assign a unique id to each format that will be written in the savegame.
So far, nothing new under the sun; and of course, this could be extended to define a format version for every data type,
as someone suggested above; but the game savegame format version is more important here
because it is directly connected to the game update release.

Each time you stabilize a new format for a new game update, you will define a conversion routine
from the previous release version (just from the previous version to the current one).
Then when you load a savegame, the game will apply sequentially the chain of conversions from that savegame version to the current one, and then apply it to the game state.

For "conversion routine" I just mean that you update, in an arbitrary way, the state of the current savegame in memory
in order to be valid/consistent in the new format.
For example, in the past version, in order to solve a puzzle P, you should pick up the object A and use it.
In the new version you should pick up the object A, talk to the character C, and then use the object.
In the conversion routine, you will check this: "If the puzzle P is solved, then register that I've already talked to C".

It could seem a difficult task, but it must be noted that you'll always reason about the current state of game and the previous release only
(and so just about the very last changes to the game), not the whole development story.

Davide - Aug 24, 2015 at 17:33
lol, sorry for the wall of text..

Mattias Cedervall - Aug 24, 2015 at 17:12
This comment is short to save Ron's time.

Alex - Aug 24, 2015 at 17:17
That was a really interesting point that "success is rewarded by new art". I had never thought of it that way before, but in retrospect it explains a lot of why I enjoy playing adventure games.

If you ever want to write a longer post about rewarding players in videogames I'd gladly read it. It sounds like something you've thought about a lot.

tomimt - Aug 24, 2015 at 17:19
I do enjoy reading these blogs. The insight, even the more mundane like budgeting,  you give out in them is among the best of the KS projects I've backed.

Assaf - Aug 24, 2015 at 18:24
Awesome read, thanks.

Cazzeris - Aug 24, 2015 at 18:43
It's great to see how clear you are about your design philosophy, truly a remarkable virtue that should interest all gamers above the worthless, buzzword-infested talk that sadly corrupt most of this industry's relations with its consumers.

That said, perhaps making so many ports brings unnecessary risks to a development of this nature. They won't make the game any better, and all the audience worth-catering to uses a PC to play videogames since it's the most sensible thing to do (specially if you are interested in old-school adventure games that don't even require a modern PC to be enjoyed). From my point of view, all the UI and coding work seem to be a waste of time that could be used to simply finish the game and start working in another one. Of course it's nice that there will be no need to spend any of the Kickstarter budget on it, but still.

Other than that, I'm eager to know a bit more about Steve Kirk's work for Thimbleweed Park. He's a great composer, and hearing his music in an adventure game will be fascinating to say the least. I wonder if the game will have an area with changing tracks for the screen transitions iMuse-syle, since it was such an awesome feature that reached masterful levels with MI2's Woodtick.

And regarding's Mark's art, I'd suggest adding one or two close-ups as a reference to the ones in The Secret of Monkey Island and Loom. Those were superb, and definitely deserve some love in TP.

Nacho Fernandez - Aug 24, 2015 at 18:57
Great post, keep up the amazing work, Ron. And comment after comment nailing things I would have said myself, I guess I feel as if we all were in the same boat, let's hope we finish the trip safe from scurvy. ;)

MarcusG - Aug 25, 2015 at 01:36
I think I've said it before, but I'll say it again: It is just lovely to read about the development process in such an open and honest way.

... wait, what!? No highlighting items?! NOoOoo!! I want my money back.

Christian Kupsch - Aug 25, 2015 at 03:17
I'd be totally fine, if you cut the podcast. It is a funny addition, but does not hold loads of concrete & relevant info. Half of it is clear anyway or could be read in a blog post and some things repeat for several weeks as tasks take more than just a week.
I'm also in favour of reducing the blog posts, if it means that you can work more on the game. Originally, you wanted to post only once a week and sometimes you skipped a week, which was totally fine. Now, most weeks there are more than one post. Don't be afraid to CUT. :-)

Kindest regards

Henk - Aug 25, 2015 at 03:19
For some reason the fixed sky looks a bit 'off'  when the screen is scrolling/parralaxing. This way it looks a bit like the earth is spinning and the character and the sky stay in the same place. Am I the only one who sees this?

longuist - Aug 25, 2015 at 13:41
But the sky isnt fixed, it just scrolls less. Static or full movement would look odd too, so this is the way too go imho. I guess the scroll speed isnt final, the task is written on one of the many lists and tampering with it is already budgeted for.

Soong - Aug 25, 2015 at 05:50
I never realized how much of a reward new art was in classic adventure games.  I knew that new areas were a reward, but I wasn't aware how much of a role the art played in that.  Now I keep on thinking back to the times I played those games and I think about how much I unconsiously enjoyed seeing new art.  Wow!

Estevan - Aug 25, 2015 at 06:04
I do think that custom engine was a good choice. The typical approach of "use what is already available" isn't always correct one, as explained by Joel Spolsky -- http://www.joelonsoftware.com/articles/fog0000000007.html. Couldn't have agreed more.

Davide - Aug 25, 2015 at 06:15
Plus, Unity is not open source, and if you find a bug which causes problems to your game
(which could happen just a few months until the release), you should wait the engine devs to fix.
Sometimes, the engine developers just don't fix it
(e.g. old Unity3d networking code is broken and was never fixed, they just added _after some years_
a new rewritten and quite different networking layer, deprecating the old one).

Ricardo Marichal - Aug 25, 2015 at 07:36
Hi Ron. Please, can you tell how much is the salary of Mark?.  Is a monthly salary or for the whole project?. Thanks !!

Micheal Mai - Aug 25, 2015 at 07:46
You should seriously think about writing a book one day, Ron. Now is probably not the right time for it, though.
I for one, really appreciate your weekly podcasts. Just hope, that you won't hate us for making you do them at the end of the project.

Lukas ThyWalls - Aug 25, 2015 at 07:49
I think is too late, but saying it doesn't cost anything, and i don't know if anyone say it before.

I send a comment in a more related post but that post it's very old and maybe here can be more "visible". http://blog.thimbleweedpark.com/roadmap1/55d23ecb8195c3a829e1a6b4

I'm talking about the voice recording, and if it could be a way to, like the fan translations, make a fan dub, and making the possibility to do fan projects to make the voices for the game in other languages. I know some of them, and maybe Thimbleweed Park could be an "easier" one (inside all difficult it is by itself) because there isn't lip sync and things like that. My girlfriend is in that world and she knows projects like this and she is aboard in one.

Of course, i (and everyone, i think) don't want to make more difficult the development of the game. You know if it's possible or approachable. It could be overwritting the original voices (i know this is the ugly way... but it's the normal way to do this things) or maybe have a folder with the default english voice and another folders with other(s) languages (this is the beautiful way...), but it isn't needed to be much sophisticated than changing the voice files one to one, and maybe making the actor talks meanwhile the voice plays (crap, i need to remember that always it can be more complicated), and allow to have a text file with the credits of the project and the names of the voice actors.

Anyway, whatever happens, i only want to drop the idea. Thanks for all of your work (o all of you) and thanks for the way in which all of you described the development of the game. I think is a lot interesting, and i don't miss anything.

PS.: And sorry for my english :P

unwesen - Aug 25, 2015 at 08:37
Horrible nitpick: around 1:25 in the video, when the character walks under the right-hand lamp, she looks a little more lit than she should be, since she appears to be quite clearly in front of the lamp's cone.

At least that was my impression.

But dayum, that lighting looks tasty overall!

Bogdan Barbu - Aug 25, 2015 at 08:43
Currently, front & back behave as if the character were in the light. They've mentioned this in one of the podcasts. They also said they wanted to fix it at some point.

Ron Gilbert - Aug 25, 2015 at 09:56
The lighting (and most everything we show here) is not finished, please keep that in mind. You are looking at a game that is far from finished and games get done in layers. Most features (like lighting) go in as a first pass and then are tweaked later. The first pass of the lighting didn't take the actors Z distance into account, that was added later. The lights now work as you describe.

Mario - Aug 25, 2015 at 15:57
Alter, bleib mal locker und lies erstmal richtig.
in english: dude, calm down and read exactly before you post.

Bogdan Barbu - Aug 25, 2015 at 19:59
I'd say it's fine not to know exactly what's up. Very few people would (need to) follow a development blog so closely.

Mario - Aug 26, 2015 at 09:47
hm, they  can not answer the questions over and over again. it's annoying, especially when it's written in the blog. i mean if these people are to lazy to read the block, they shouldnt ask either.

mr. T - Aug 25, 2015 at 14:48
As much as I love the posts and podcasts, I really wouldn't mind if you'd switch to less frequent update cycle, if that means less stress and more time spent on the game. Either way, you guys rock.

Geoff Paulsen - Aug 25, 2015 at 15:21
The blog updates and podcasts are WAY worth it.  The game is getting done, and we'll have it someday... but playing a game is kinda like binge watching a TV show.  We can enjoy it anytime, but capturing the dev thoughts while you're developing is priceless.

urielz - Aug 25, 2015 at 16:34
I agree with Geoff. And I wouldn't mind a delayed launch. The only stopper would we if you guys run out of money because of the delayed launch. I think everybody would understand if interaction with backers has to stop because of that.

Mattias Cedervall - Aug 25, 2015 at 19:04
Maybe the save file can have a version number
corresponding to the version of the game
installed? Here's some items from version 1:

1 sword
1 hat
1 phone

The game is updated to version two and now
one object is removed and another is added:

1 2 sword
1 2 hat
1 phone
2 joystick

Now the items are marked as they are in version
1-2, but the phone doesn't have a 2 mark which
means version 2 of the game will not try to load
that item in the players inventory.

If you get a save file from a friend that is
using version 2 of the game, then your version
1 of the game will simply ignore the version
2 items because the code says to ignore items
higher than the game's current version number.

If you remove a room in version 2, then the
characters can maybe get moved to a default
location or something like that?

I don't know if any of this makes sense, I
just want to try to help out.

Regarding the sound track in the save file,
I guess the game has an internal player
keeping track of where the song is playing
right now, like 38 seconds into the song
Circus Soundtrack 1 and then stores that
position in the save file under the variable
soundtrackplayingrightnowforactorX.

Mathias - Aug 26, 2015 at 01:51
Love your game and your game blog. Pods are not necessary.

Greets

Ron Gilbert - Aug 26, 2015 at 10:00
As it says in the FAQ, we won't need those until the beginning of the year.

http://blog.thimbleweedpark.com/faq

Blog Nazi - Aug 26, 2015 at 13:45
wrong place :P

Ron Gilbert - Aug 26, 2015 at 13:48
Weird. Clearly the person who wrote this blog software is incompetent.

Blog Nazi - Aug 26, 2015 at 17:42
Noo, he's great. Just a bit overworked, needing some rest :P

Grafekovic - Aug 26, 2015 at 18:12
Please change your name. It's not funny. Greetings from Germany.

Marco - Aug 26, 2015 at 03:34
Hi! Any news about our voices recorded for the answering machine?

DZ-Jay - Aug 26, 2015 at 05:31
As mentioned above, the animation is taking longer than we thought to lock into the right style to fit Mark's backgrounds.
>> We have yet to put any final animation into the game and this scares me.

Like you are fond of saying... if something is not working, don't be afraid to slash and burn it, or change courses!  Perhaps the original Maniac Mansion style would suit better.

Just sayin'. ;)

     -dZ.

(Sorry couldn't resist it.  Please don't hate me.)

Bogdan Barbu - Aug 27, 2015 at 12:28
Yeah, throwing away everything they've already made will clearly help the schedule.

Shred - Aug 26, 2015 at 05:38
Talking about music: What about asking Chris Hülsbeck to compose the soundtrack? :-)

Mario - Aug 26, 2015 at 09:51
this is not an action game like turrican. TP  will need more ambient tunes rather than Jumping Action Jackson Flash Sound.

Zak Phoenix McKracken - Aug 26, 2015 at 05:42
It's simply... fantastic.
Keeping in mind that's not the final version of the game, and it's already so beautiful, with a care and attention to the tiniest particular... you are really great!
And if you won't ready yo release the game within the 1st of June, in my opinion it's not a problem. I can wait... Take your time, really!

Zak Phoenix McKracken - Aug 26, 2015 at 08:21
Ron, about the script to be locked, for dubbing and translations: can you estimate how much % of text is, by now, to be considered final, with no changes?

Ron Gilbert - Aug 26, 2015 at 10:03
0%. A lot of it has been written, but writing is more about rewriting then writing. You write and rewrite and rewrite. I'll be rewriting until the day of script lock.

Bogdan Barbu - Aug 26, 2015 at 10:34
I'd much prefer a game that is late but has a better script. I know this may not be realistic but I'm was just letting you know how I feel about it.

Peter - Aug 26, 2015 at 14:37
Would it be possible to add another writer, who was "very funny" in the old Lucas Arts Area ??? :P

Claire - Aug 27, 2015 at 15:59
I'm loving all the blog posts and podcasts. Thank you for going to all the effort of creating them, even though they take you away from creating the game.
Loving everything the team has been creating. I'm really looking forward to getting my hands on it.
You guys are awesome!

Guybrush - Aug 31, 2015 at 03:32
Background art is wonderful, it really brings me back to the old days. So much attention to details and the use of light and glows is brilliant!
I played the late Broken Sword (kickstarter one) and was great fun, especially for the classic graphic), cannot wait to play this. I couldn't finish Zak playing it in 1990 (too young and no solutions, and the game was very hard!), I hope this game will give me the same challenge, I'm sure the puzzles will be amazing!

Greetings from Italy

Guy - Sep 10, 2015 at 18:10
Hi Ron, so excited to hear you're making a new point n click adventure game! I only just discovered this recently, so unfortunately I'm catching up with the cool kids here.

One thing I'm curious about (and this is going to make me sound like comic book guy from the Simpsons) but you mentioned in your grumpy gamer blog that if you were to make another Monkey Island game, that you would lose the verbs (http://grumpygamer.com/if_i_made_another_monkeyisland), yet it looks like you've stuck with them for Thimbleweed Park. Is there a particular reason for this? Did you decide there wasn't a better way to to do it? Or is it purely in keeping with the "1987" aesthetic?

Thanks, and once again I'm seriously excited to hear about the game. Can't wait!