DatGui is a nice library that can be used to embed a property editor in any webapp allowing you to tweaks variables. It can be used to debug an app or to find the right set of settings.
With the advent of the RaspberryPi we have seen a resurgence of retro gaming using emulators.
My last post about Pixel Dungeon contained a bit of a lie. I didn’t randomly (re)discovered the game on my phone. I actually tried to buy the game after having seen this amazing demo on shadertoy (and THEN I discovered I already bought the game a year ago and it was sitting on my phone):
I recently discovered an unknown Pixel Art icon on my phone:
Stephanie Hurlburt has recently called out all graphics programmers to send tutorials that could benefit aspiring novice programmers. I will admit I am a total noob to any fancy pixels thingy. So I took onto myself to found and read at least 2 of those tutorials to learn a bit about this arcane (for me at least) domain of knowledge. Here are some of my findings:
Some time ago I talked about CFDG which is a way to create art using a “context free grammar”. This allowed a maybe less technical person to generate art according to simple description way easier than a full programming language. Basically this:
Always on the lookout for the latest geeky gadget, I found this great company called kano that specializes in gadgets that you assemble yourself and that involve programing. They sell mainly 2 products:
I have been a manager on Stingray for the past year. It happened quite organically and never was planned on my part. In fact I did not want at all to become manager. But at some point we had choice between bringing someone from outside of Stingray who didn’t know a thing about our techs… or for me to step up and manage the Tools team. We have chosen the latter. Since that time I try to juggle what I like to do: code and be involved with technology with managing responsibilities.
I made clear that I LOVE to consume games postmortems. Recently I found this incredibly interesting list of 10 seminal game postmortems on GamaSutra. And this list is the real deal! All those postmortems are in a written format (no video). And they make for a fine coffee break read if you are currently in vacation like me.
My girlfriend is a physics cegep teacher. For those not in the know, or not living in Quebec, Canada, Cegep is a weird grade between Highschool and University. Next session, she wants to try the next big thing: introduce its students to physics simulation programming. I am on duty to help her find the best technology to achieve this. What do we have on the market?
As the proud father of an almost two years old son, I hope that my kid will share some of his hobbies with me. That means I hope my kid grows into a full geek who loves boardgames, videogames and programming!
Great post on Futurism on how to be more successful (i.e rich) than a sports athlete or even a movie star. Simple answer: become a software engineer! If you factor in how short a sports career is and what is the average salary for an average player (which most are!) you get that for a 40-year career an engineer will make more! Add to that how easier it is to become an engineer compared to be drafted in any sport major leagues and you have a recipe for success!
At Autodesk we have worked on a 2 weeks per sprint schedule. The last Friday of each sprint is the golden day of the week: this is the hackday! On hackday, we can work on anything that interests us as long as it is tech related: new features on Stingray, try out new technology, pair up with a colleague to test a game mechanic. Anything! More and more companies have a similar system: at Google employees can work 20% of their time on a side project. Same deal at Unity.
Recently I played Oh My Goods with my boardgame crew. This is a clever card game of resource management spiced up with a bit of push your luck. It also makes use of one mechanics I talked about abundantly: multi use cards
I keep finding more and more interesting single file header libraries. If only I had enough time to really try them out.
The name of the blog is Tech, Games and Whisky. I have talked plenty about games and techs. But never about whisky. And I am about to correct that!
js file and you are good to go. Often, using a package manager is a superfluous step. Download the lib directly or link to a CDN and TADA: it works.
Strange how synchronicity works. I stumbled on this medium post 2 days ago: I wrote a programming language Here’s how you can too. This article explains at high level what is needed to write a programming language: Lexer, Parser, Intermediate language and possibliy transpiling. The article is interesting in that it emphasis how the author really wanted to write all the different components of its compiler toolchain by hand instead of using tools like Yak/Lex or Bison.
My favorite board game designer is hands down: Vlaada Chvatil. Most of Vlaada’s games have a great theme-mechanism integration that makes them special.
Converting Stingray to Typescript
.ts assuming all of our types are
My last post was about games post mortems. Today I watched the most touching of all post mortems: The Last Game I Make Before I Die. This is a talk by Samuel Coster, one of the three Coster brothers who worked on the great Crashlands.
I like to read and watch any story about game development. Don’t get me wrong, I like technical articles as well. But I REALLY like personal stories and post-mortems about game making. Creating video games is difficult (in fact shipping any software is difficult) and the personal stories of the people involved in such a creative process are always interesting.
Recently I wrote about the noc_turtle library and how it implements Context Free Design Grammar. Turns out noc_turtle doesn’t exactly parse a “grammar” definition. It uses its own special syntax to specify a grammar.
I already talked twice about the Fantasy console Pico-8. Paul Nicholas really did a great achievement using this fantasy micro-console: he kind of recreated the famous SCUMM engine that was used to power old school classics like Zak McKracken and the Monkey Island games.
I like both American style comic books and European graphic novels. One of the more interesting graphic novels I read in a long time is the Alter Ego series.
Magic the Gathering is the granddaddy of all customizable Card game. It started the whole genre. It is the richest, it has more than 15000 unique cards, three constructed formats (Legacy, Modern, Standard) that are supported by a strong tournament structure. It even has a Pro Tour and a World Championship.
I really like the 2D web game engine Phaser. Its documentation is exceptional. There is an astounding amount of examples (all available online). And its feature set is great (particle, 3 physics engine, atlas and spritesheet). I also happened to like Typescript.
I already talked about card games (both CCG and LCG) and how they are sort of lifestyle games. The fact that these games evolve regularly makes it more difficult to play with more casual people. Especially if you follow the tournament scene closely.
I recently listened to episode 145 of the Ludology podcast. That episode covered multi-use cards in games. This episode reminded me of a lot of good card games I totally forgot to talk about when I wrote about multi-use cards recently.
We are a smallish group of about 30 developers working on Stingray. We have multiple teams spread over Stockholm, Montreal, Paris, San Francisco and Prague. This makes it a bit more complicated to have good communication and synergy.
I recently wrote about multi-use cards in games. Some people pointed me to episode 145 of the great game design podcast Ludology saying they already covered that topic. I sometimes listen to Ludology but I will admit I hadn’t listened to this specific episode.
What could be more meta than writing a game for a console that doesn’t really exists. Writing a game for a Fantasy console? This is what Lexaloffle is proposing with its Pico-8 plaftorm. The spec of your game will be :
I stumbled on this great (and somewhat old) article about Recurrent Neural Network recently. I will admit that I know next to nothing about Neural Network. And much less about the fact that they could be Recurrent.
During the past few years, card game designers have really pushed the envelop on creating “big” games out of only deck of cards. One key development breakthrough as been to use the same card for multiple purposes in a game.
I always liked old school RPG like Dungeons and Dragons. I like Dungeon Delving. Both in computer games and in boardgames. The epitome of getting deep down a dungeon in search of loot, fame and death is the whole Roguelike genre of games.
Insomniac Games has made available his Cache simulation library. This is a suite of tools: both runtime data gathering and Review UI that can be used to profile the cache usage of an app running on Windows.
Everybody knows about Harry Potter. There are the books, the movies and probably the cereal box. What one the many things I liked in those stories were how a kid gets to learn magic. In school! In a modern day settings. I read those books when I was in University but I can’t help to feel it must be really magical to read Harry Potter when you are loner. And imagining that you could be drafter for Hogwarts.
I already wrote about preact and how impressed I am that this really small library is on par feature-wise with React. Turns out, being a small library has another advantage: it makes it easier to create a code walkthrough that is easy to follow for any developer interested in the matter. Adam Solove has created just that: a new series of articles (part1, part2) explaining how react is implemented and how it does its magic.
I already wrote about my fascination with Pixel Art. I found this nice post on the excellent pixelation web site. This is a massive glossary of all the terms used in Pixel Art with some pretty visual definitions:
Gaming, like art strive when you put constraint on your design. During the past few years a new breed of games have been developed: the microgames! Those games have generally few components. And their packaging is small.
Each Tuesday at lunch time, our team watch a tech presentation. Recently, we watched a great GDC talk on youtube: Tech toolbox for game programmers. Since I work full time on a game editor, each time I can learn about new tricks, new techs or good experiences involving tools programming I am all ears. This presentation was segmented into 5 smaller 10 min talks.
Like any good geeks I like to dig deep into geeky subjects. When I started into boardgames, I found all the websites (bgg, tric trac, grognard, The Gaming Cabinet) I could and started reading EVERYTHING! I subscribed to lots of blogs and I obviously bought lots of games.
My last post was mostly about boardgames, but my gaming life is also full of card games. Especially customizable card games.
Little boardgaming history
As long as I can remember I have been playing games. Uno with my parents. Then Monopoly, Clue and a slew of other more mainstream games. Some of those were more involved like the 1982 game: Survive escape from Atlantis. Some were total thrash like the badly designed french canadian game called Fric which tried to emulate Monopoly without any of the strategies.
When I was young I read tons of “Chose your own adventure books”. My 2 preferred series were the Lone Wolf series and the Sorcery! series. I liked that in those 2 series you played the same character and you carried your possessions, skills and abilities from book to book.
As a developer who has worked on both big C++ applications (multi-millions lines of code) and big web app (stingray editor is about 300KLOC) I found small and well-designed libraries both comforting and relaxing. It shows that software development can create concrete and well-defined “unit” of work that does not need to be modified infinitely.
I always loved writing application code involving UI. What can I say: I like UI framework! I can’t even claim to have worked with a lot of UI framework professionnally (MFC, Tuit2k, Qt, Motionbuilder KUI) but I like to read and to know about ui system.
I have been working on the Stingray Game Engine for the past few years. For the small history, at the beginning there was a small company called Bitsquid. This company founded by Tobias Persson (not the hockey player nor the comedian) and Niklas Frykholm created a very lean and efficient game engine called Bitsquid. This game engine got bought by Autodesk and was rebranded as Stingray.
During the last few years I got really fond of Pixel Art. My SNES roots are speaking through this craze. I want to design a game since forever with that aesthetic. I even bought all the packages from Oryx Design Lab. These bundles of assets (especially the 16 bits one) are really nice. Now if I could only start coding that game…