There was a memory leak in the game where the grass over-sprites kept accumulating after the player entered the exterior. I have fixed it and added a ‘hack‘ to force the garbage collector to do it’s thing. It now runs each time the player switches worlds, to ensure any remaining garbage is collected. I am worried that this might lead to incompatibility issues later on, I cannot foresee the consequences. I have also created a blog post which will open when you click the ‘walkthrough’ button in the main menu. For now it holds a place holder until I have the actual walkthrough up. In the past I made video walkthroughs and posted them on Youtube. This time I will make a written walkthrough. The idea behind this is when people Google vague key words such as ‘what does the blue key do in Letter for Mimi’ this blog will be more likely to get a high rank in the results.
I have decided to add the Newgrounds API to the game, and add achievements. Crossroads:2D was very popular and featured on the front page for a while, specifically due to the achievements. My hope is that more people will play it because of the achievements. The content of the game is finished at this moment and I am now working on the Newgrounds additions and polishing. I hope to release the game somewhere this week.
There are 10 Huge Pencils you can find in the game, you need to collect all of them in order to finish the game. If you turn on Show Coordinates in the settings menu, it will be easier to use this walkthrough. Some characters wander around, so they will be somewhere near the coordinates mentioned.
(3,3) second floor of Mimi’s house.
(54,30) in the forest.
(1,1) inside Yu’s house.
Somewhere near (37,52), talk to Aaron and use the coin to buy a soda in the Boulder builders inc. building (51,40).
(44,44) talk to heather, she will teleport to (27,36), then to (54,35) and (53,60) before she will give you a Huge Pencil.
Somewhere near (31,45), talk to Clara and trade the Sun Screen for a Huge Pencil. You can get the Sun Screen by solving the puzzle in the cave and then accessing the roof, it will be up there somewhere.
(35,65) on the island, you can only get there by boat if you have a Green Key. If you already traded it with Freddy you need to get the Yellow Key(45,33) and talk to the Locksmith near (37,38).
Somewhere near (15,47), trade a Green Key with Freddy.
Talk to Hannah in her house (35,16), then to the rock at (29,26). Go back to the house and talk to Hannah again.
Get the bag at (29,24) and return it to Roxy (Boulder builders inc. (51,40)).
How to solve the Sokoban puzzle:
When you got all the Huge Pencils, go to Mimi at (16,42) and talk to her. You will then enter Richard’s house. Talk to Richard (2,1) to finish the game.
I watched Indie game: the movie the other day, it is a documentary following the developers of Fez, Braid and Super Meat Boy. The build-up to the release of each game is shown and the intrapersonal struggle of the developers. It is very interesting to hear from the people who worked day and night on something and to see the gratification they get when it is finally released. In the words of Glengarry Glen Ross you have to always be closing. You don’t get paid if you can’t sell a product, which makes it a tough business to be in (good thing I do it as a hobby). If you are interested in independent games, I would definitely recommend the documentary.
I have been working on improving the graphics here and there; Adding shadows to tiles to give the game more depth and an increase in graphical appeal. The house on the right has no shadows, while the one on the left does have them. A subtle difference which I hope will make the overall image of the game more appealing. Besides graphics I have also worked on adding the content to the game. In previous games the execution of events preceded the text in the dialogue, i.e. the item check is done before the text is displayed. In the current engine this is the other way around, as you can probably imagine this leads to problems when a branch in dialogue is based on the possession of an item. I will try to find a solution to the problem without having to rewrite the dialogue engine. While adding the content to the game I get a better idea of the shortcomings of the engine and bad design. I wish I could rewrite everything, but I also know that releasing the game is more important since I am already so close to getting it done.
I have put the ‘map editor’ project on halt, because it became difficult to work on two projects simultaneously. Currently, the game is developed by manipulating the *.xml format by hand. In the future I hope to revisit the map editor project. Python and Tkinter turned out to be not suited at all for my purposes. I also worked on improving the tiles today. The exit tile is now a lot brighter, so it is clear it has some kind of special meaning without explicitly telling the player. The shadows on the trees and grass have been mirrored, so now all the shadows will fall to the left. It is difficult to give a good estimate when the game will be finished, but I hope to do so before the end of the summer.
“It’s what the 80s were about; heros fighting evil, fight for right. The theme of Knight Rider was one man can make a difference, and I’ve basically lived by that theme my whole life.” – David Hasselhoff
This citation above is from the commentary on the music video ‘True survivor’ by David Hasselhoff. I really like the idea what he talks about, it is something I try to incorporate in my games as well. The protagonists in Letter for Mimi, Kees Adventure, Crossroads: 2D are all people who make a difference on their own. I have heard that The Hoff had some rough times in his life when he was addicted to alcohol, it is good to see him getting it all back together. Knight Rider is an iconic 80s tv-show which I am sure many people love. I hope we will get to see more of him in similar roles in the future. The video clip above is part of a film called Kung Fury, you can watch it on YouTube.
There was a bug when the default world was smaller than the other worlds, the flxTileMap would not display properly when loading the larger world. I am not sure if this is a bug in Flixel or in my code, but I fixed it by resetting the flxLayer that contained the flxTileMap, and recreating the flxTileMap object. In the previous version of Letter for Mimi, there were some dialogue events where tiles were altered, this is now made redundant due to the resetting of the tilemap. If I want to use this feature I will have to log all the changes to the tilemap and redo them when the map is loaded. There was another bug where NPCs would not reset when re-entering a world, this was also fixed.
I fixed a bug where a character was able to walk on blocked tiles when a door/teleporter was next to a blocked tile. An example can be seen in the image above, the player walks on the stairs, the new world loads and he would have walked off the screen without a problem. Fixing this bug was important for allowing stairs in the corner of rooms.
In the image above you can see a Voronoi diagram I generated. You can find a tutorial on Ivan Kuckir’s blog. The implementation from Kuckir was adapted to be used in combination with Flixel. In the future I might be able to use Voronoi diagrams for games.
Creating scrollbars in Tkinter is not a trivial task. In the window above, which is a topLevel, a Canvas is added which contains all the Labels. The Scrollbars are then assigned to the topLevel and set to scroll the Canvas. When creating a window manager, I would imagine that adding a scrollbar is something of great importance so it should be very easy to add one. Anyhow, it works, as you can see. I am trying to also implement this in the map view. The windows load really slow because of all the Labels, I have to see if it still leaves for a work-able environment when mutating larger maps.