These three weeks I’ve worked on finishing Blast Flocks for Castle, and I turned my old ‘Bombs on Venus’ project into ‘Gifts on Venus’ for the Pico-8 Advent calendar!
After the last weekly recap, I quickly got to work on upgrades for the planes in Blast Flocks! There are now 4 different planes, every one a little bigger than the last. If you have enough planes, two planes of the same type will merge at random and form a bigger plane!
Bigger planes are more difficult to kill and they shoot faster, but when they get neutralized, any other player can capture them, without going through all the upgrading process!
Right after being done with the upgrades, I moved on to AI enemies!
AI enemies are there to keep you busy while you wait for other players, but also to grow your flock! These enemies are under-powered and so shouldn’t prove much of a threat, especially compared to an actual player.
Those enemies appear in groups and those group’s internal structure mimics that of a player. The structure holds the list of ships and a targeted player. That information is shared from the server to the clients, one enemy group at a time so as not to overload the network.
Moreover, only the relevant (close-by) enemy groups are shared to each player!
Share.lua, Castle’s network library, has this relevance system that lets you define the conditions under which data should be shared from the server to each client. It might be a little difficult to understand it completely at first, but it’s actually a very efficient system and fairly simple to use.
This relevance thing was used for AI enemies but also for the players, so that you don’t receive the data for every plane of a player that is at the other end of the map. Instead you only get their averaged position so that they can be placed on the minimap.
This effectively puts much less of a strain on the server, which is great! But this system is also pretty new and I was one of the firsts to use it, which meant… issues! Thankfully few, but still. After some time of banging my head on the desk, I could figure out where the issues were coming from, and then fix them! And then tell the library’s creator about it! And now the issues will get fixed! \o/
I also made that new title art for the game! 😀
Another feature of Castle that I haven’t wrote about yet, is automatic servers! Castle would have this API that let’s every instance of the game create and/or join game sessions on the Caslte servers. The server in question would execute the code you set on your server.load() and server.update(), while on the player’s side the game executes the code in client.load(), client.update(), client.draw() and all the other regular Love2D events!
It’s a good system, and it is functional, but as of right now I can attest that it is a little rough around the edges. Various issues popped up and then were squashed down. It was part of my job from the start to test the things and find issues, so I won’t complain, but it did take some time to get through.
So much time that after that we were past the deadline on the project! And the game wasn’t quite done just yet! Whoops!
The Castle team graciously accepted that I take my time to finish the project and so I kept spending some time on it during the next two weeks. In the end, the game is nearly done right now! There are a few more bugs to fix but all the content is there! If you want to play it right now, you can! All you have to do is join the Castle Discord! Otherwise, you can wait for the public release which will probably come at the end of this week!
It’s a little late to write about this but whatever!
In the two-three months leading up to Christmas, a part of the Pico-8 community got together in a project organized by @Bigaston to make an Advent Calendar of Pico-8 games, where a new Pico-8 game would be unveiled every day of December until the 25th!
It’s a super neat project and all the games produced are actually really good and interesting! You should seriously check it out!
And I made a game for this project! Or rather, I took an unfinished project from march, finished it off and made it a little more Christmas-y! And that’s how you get Gifts on Venus!
I’ve been wanting to finish this project ever since I stopped working on it. I had stopped because of the token limitations and also the cart compression limitation which was lurking around the corner. But I actually managed to take care of both by crawling through the code and minimizing everything as much as I could. I also finished off the gameplay: finishing the boss, adding a game over and a title-screen, sound and music made by the amazing Gruber.
And then the holidays happened and I took some time to rest my brain and now we’re already in 2019. That’s just crazy.
So let me wish you a really good year! I hope you get to crush your goals this year and that things go your way in general!
I have a few goals of my own for this year, most of them about healthier ways of life, worrying less and taking my time more. I also want to enjoy what I make again and learn new things and cultivate my creativity.
For this latter thing, I gave myself a challenge! To come up with new game ideas all throughout the year and to post one every weekday on my Patreon. The Monday ones will be public, while the other ones will be exclusive to the 5$+ tier patrons. I’ve already started and you can find these game ideas over there! (none are public just yet – the year started on a Tuesday :X)
Another change that is coming to the Patreon is an exclusive Discord server to ask questions, meet each other, and get early previews of things! I actually didn’t set that up just yet but it is coming in the next few days! I’m also going to re-write the Patreon description and all that, as I do every year.
This year I want to make more, smaller games. And I’m going to finish SUGAR, and use it to make those smaller games. If things go well I might even finally get a start on Gar’s Den’s sequel!
Whatever I actually do end up making, I can only be thankful to you reading this, and to everyone else supporting me either financially on Patreon but also emotionally on other platforms, by reacting to the things I make. For allowing me to do everything that I do and to keep on doing it, thank you all so much!!
Here are the names of my 3$+ Patreon supporters!
★Joseph White, ★Spaceling, rotatetranslate, Anne Le Clech, Wojciech Rak, HJS, slono, Austin East, Zachary Cook, Jefff, Meru, Bitzawolf, Paul Nguyen, Dan Lewis, Christian Östman, Dan Rees-Jones, Reza Esmaili, Andreas Bretteville, Joel Jorgensen, Marty Kovach, Giles Graham, Flo Devaux, Cole Smith, Thomas Wright, HERVAN, berkfrei, Tim and Alexandra Swast, Jearl, Chris McCluskey, Eiyeron, Sam Loeschen, Pat LaBine, Collin Caldwell, Andrew Reitano, Qristy Overton, Finn Ellis, amy, Brent Werness, yunowadidis-musik, Max Cahill, hushcoil, Jacel the Thing, Gruber, Pierre B., Sean S. LeBlanc, Andrew Reist, vaporstack, Jakub Wasilewski
Thank you so much again, and I hope you have a wonderful 2019!