Ciro Santilli used to play video games when he was young. But after he reached 18 he got bored of them.
The problem is that no matter how you look at, the how to become famous in the real world game is just always more interesting and fulfilling.
Therefore adult Ciro enjoys only the following types of video game content in video form, so that other people waste their lives playing the games while you only see the highlights:
The aspect Ciro enjoys about non-PvP games is atmosphere. Not as conveyed by useless story telling, but as conveyed by music and graphics, and the context deep idea. Legend of Zelda and Metroid come to mind.
And too many games commit the sins of dependency of dexterity, no save states, how do I skip this boring part, or jump straight to the beautiful one?
It also doesn't help if you are already typing on a computer all day long on your job. Hands get tired. Eyes have an infinite capacity to consume useless YouTube videos however. Medically proved.
As a result, Ciro just watches videos about video games. Notably games he played when he was a teenager and already understand the rules for.
And things got even worse as after Ciro Santilli's Open Source Enlightenment, and he started to feel bad about playing any game that is not open source.
Figure 1. Five year old Ciro Santilli playing NES on a joystick. He would get really mad because he could not finish those insanely hard games. Desperate, his parents would have to call older kids from the neighbourhood to help out. Pro tip from the future: the classic controller would almost always have been a more efficient controller. Maybe this kind of crap shapes one's future?
Video 1. Supercut of Doug S02E13 "Doug's Lost Weekend" (1992) Source.
Ciro Santilli used to watch Doug as kid. Of all the episodes, only this one stuck to his mind as an adult. It really drove the point home. The pain and joy of being addicted to anything really. Thankfully wheneve Ciro got addicted to a video game, he also quickly got tired of it. His last temporary addiction episode as of 2022 was Cataclysm DDA!
It is also so awesome how the episode pictures Dougs imagination while playing the video game, which is much more realistic than the actual crude graphics. The Nintendo hard reference is also clear.
Another great point of the episode is how good it is to play a single player video game taking turns with a friend on your side. Both people have to be fully engaged, and the game has to be hard. Perhaps those days are over now that everyone has their own computer and can each play together... and that is a huge shame. When playing on the couch with a friend, the one who is not playing can act as a copilot and thing more broadly as the other focuses on more specific details of execution. One is also reminded of pair programming.
Another great point is, partially when you are addicted, to play the video game at night until late, or very early in the morning. Ciro has fantastic memories of playing Zelda on the Nintendo 64 on Sunday mornings, or his emulation experiences from late weekend evenings at university: Video "Samba e Amor by Caetano Veloso (1975)".
The followup lucky hat segment is also amazing: doug.fandom.com/wiki/Doug%27s_Lucky_Hat
Looking back, the series is still extremely charming. It is interesting how Doug's best friend Skeeter Valentine is green. Ciro thought he was indian, but doug.fandom.com/wiki/Skeeter_Valentine says he's black.
Ciro once commented that the best game is an infinitely hard one, where you can progress infinitely. To which his great friend J. replied:
Fine, so the perfect game for you is mathematics. Stage one: prove the Riemann hypothesis!
Or more broadly, one may argue that the perfect video game is life itself, or difficult life goals like making money, becoming famous or changing the world.
Thinking about it, "infinitely hard" is perhaps not a very precise term, as it could be interpreted as impossible. And if you have mathematical proof that something is impossible, it would be "pointless" to try, trying would be equivalent to pure meditation.
Maybe a better way to put it would be in terms of a difficulty curve. Real life also involves a lot of waiting, either for some experiment to finish running, of for you mental energy to restore a bit.
But so be it, you get the idea.
But this is basically what Ciro feels on every video game. It happens too often on PVE games that things are is either:
  • too slow and easy (Ciro would rather skip those with saves made by other)
  • or too fast hard, Ciro would rather tool-assisted speedrun those parts
Not to mention the incredible breach of suspension of disbelief of most PvE games where enemies are unbelievably stupid. E.g., why doesn't Bowser just build one fucking wall 15 tiles high to prevent Mario from coming through to his castle? And then put a gate and a hundred guards in front of it? TODO there was a YouTube video of this, I think it was Toad pointing it out to Mario that it is quite weird that Bowser is so stupid, it almost feels like he wants to be beaten.
TODO there was one which was relly good, can't find it anymore. One day.
Figure 1. Life difficulty level meme with West Europe, East Europe, Turkey and Middle east. Source.
This is true. The level of competition in university entry exams in Asia in insane in the early 21st century compared to the West.
This is a list of video games that are good to watch other people playing, even if you don't play yourself. And often they are better to watch than to play as you don't have to waste your time as much!
A meta breaking glitch of a video game is a glitch that when discovered significantly breaks the meta.
In non-video game-game, it does sometimes happen that a meta is broken as well, but these events tend to be rarer and less dramatic than meta-breaking due to computer program glitches.
In PvP games, those glitches are generally forbidden by existing rules, and quickly patched after discovered.
In speedrunning however, they are either incorporated in the existing strategy, or may lead to the creation of a new run category for particularly significant glitches.
Video 1. The Controversial Olofboost by theScore esports (2018) Source. Descries the boost used by CS:GO pro-team Fnatic during the DreamHack Winter 2014 quarterfinals.
Video 1. How To Teabag Properly by BADASS GAMING (2017) Source.
Ciro Santilli views humans as biological robots, and therefore RTA videos can be thought of as probabilistic TAS with human achievable reflex constraints.
This aspect is especially highlighted in "speed run record evolution videos", which can be quite fun, e.g. www.youtube.com/watch?v=pmS9e7kzgS4 Ocarina of Time - World Record History and Progression (Any% Speedrun, 1990s-2017) by retro (2017)
From a similar point of view, Ciro also sometimes watches/learns a bit about competitive PvP games from a "could a computer play this better than a human" point of view.
Ciro also likes to watch commented manual speedruns of games as a way of experiencing the game at a high level without spending too much time on it, often from Games Done Quick. Their format is good because it generally showcases one player focusing more on the gameplay, and three couch commentators to give context, that's a good setup.
It is a
To some extent, the ultimate achievement of a TAS is to achieve arbitrary code execution (ACE) on a game, although this has been becoming rarer and rarer in newer consoles. The Nintendo 64 is the current interesting ACE discovery frontier as of 2020.
Post ACE, you then get into more subtle categories which tend to be more geometric clipping through wall glitches, but those can still be fun.
The most beautiful TAS content ever made are:
Video 1. Super Mario 64 '120 Stars' in 1:20:41.52 Console Verified by Soul Umbreon (2012) Source.
Ciro Santilli's TODO there:
  • robotics simulation with control theory focus, and in particular with a model of uncertainty of measurements and commands. For example, imagine making a robot that plays golf, with the terrain fully known. And it is harder as you cannot control the arm with 100% precision.
Why would anyone ever waste time playing a closed source game, when this will inevitably lead to endless hours of decompilation down the line when you want to:
Those who devote their time to the useless development of open source video games, before we even have decent open source development tooling, will, without a doubt, have their place in Heaven.
YouTube review channels:
This is a really good project. So fun to play around with. Low level IO part only like drawing to screen and handling keyboard inputs.
This is a good project. Limited scope to 2D card-like games, but very good within that scope.
Ciro Santilli used it for the 2D version of his Ciro's 2D reinforcement learning games.
One of the main children cartoons Ciro Santilli liked to watch. Part of the Pokemon Mania of the 90s of course.
Ciro could not understand why Nintendo won't make a proper 3D MMORPG Pokemon with actually 3D Pokemon roaming the land, which is obviously what everyone wants. There are even fan games getting there!
until this explaiend it beautifully Video 1. "The Downfall Of Mainline Pokemon Games by GONZ media (2020)":
  • Pokemon became an industrialized yearly game spitting machine, and therefore any new feature is just extra risk
  • Pokemon was kept mostly as a handheld exclusive to sell handlhelds, with a few early exceptions such as Pokemon Snap
Figure 1. Instead of risking anything new, let's play it safe by continuing our slow decline into obsolecense cartoon by Tom Fishburne. Source.
Video 1. The Downfall Of Mainline Pokemon Games by GONZ media (2020) Source. Great video, explains things Ciro had never thought about, e.g. how the Nintendo Switch unified handheld and console for Nintento, this could open the doors for a more ambitious Pokemon release.
Video 1. Pokemania Comes to America by ABC News (1999) Source. Ciro Santilli was a part of it! Especially during Ciro Santilli's 10 month stay in Coventry, United Kingdom, in the year 2000!
.
This game was mind blowing to Ciro Santilli and all kids. It felt so real. The perfect contrast between peaceful town work and saving the world. OMG.
Figure 1. Source. Subset of the dependency graph of Ocarina of Time
Commented and labelled disassembly: gist.github.com/1wErt3r/4048722
Decompilation project: github.com/MitchellSternke/SuperMarioBros-C. That project does not produce the ROM however, it reimplements an emulator + game in a single binary.
Video 1. Small Fire Mario glitch by Kosmic (2022) Source.
Video 2. Beating Super Mario Bros. as SLOWLY as Possible by Kosmic (2020) Source.
OMG, the second half of the game where the world becomes quite open and all backstories are revealed, is one of the best gaming moments ever.
This is the one that hit Ciro Santilli the hardest, coming in at the point in which he started to discern between games and the real world a little better. His parents bought it for him during a trip to Disney World in Florida in 1996 (?), since electronics were much cheaper in the USA.
So as Ciro became older, and turned into a software engineer, he started to become more and more morbidly curious about "N64 internals": tool-assisted speedrun, how the devkit looks like, how games were developed for it, hardware leaks, etc.
Luckily Ciro's mind is not interested enough by that useless shit for Ciro to seriously study it himself. But that's what YouTube is for, right? Why do useless stuff when other more useless people can do it for you?
The console has only 4 MB of RAM memory. It is quite incredible what can be done with 8 MB, from the point of view of a 2020 worls where 16 GB laptops are the norm.
And as a result, adult Ciro really enjoys tool-assisted speedruns of the game.
It is interesting how the Etyptian level, Shifting Sand Land, clearly has Indian classical music, with sitar, tanpura and tabla:Apparenty we don't know what Egyptian music would have sounded like exactly.
Video 1. The Music of Super Mario 64 by James Covenant (2017) Source.
Video 1. Video outlining the 18 unique A presses missing for 120-stars at the time. This was superseded later. with many other discoveries. Source. The 23 Remaining A Presses by Pannenkoek2012 (2018)
Video 2. Watch for Rolling Rocks 0.5x A Presses by Pannenkoek2012 (2016) Source. This is one of the most elaborate explained videos.
OMG, both of those just fucking work on Ubuntu 20.04 with README instructions, it is unbelievable, those people don't have lives. And it builds the ROM byte by byte equal from source!
There are a few different versions:
Tested with the USA ROM at sha1sum 9bef1128717f958171a4afac3ed78ee2bb4e86ce (you need a ROM to extract assets, which the project automates), which is also documented in the project itself: github.com/sm64-port/sm64-port/blob/6b47859f757a40096fedd6237f2bc3573d0bc2a4/sm64.us.sha1. Disclaimer: Ciro Santilli owns a copy of Super Mario 64.
The only dependency missing from Ubuntu packages is the IRIX QEMU user mode which they need for their tooling. The project also has a QEMU fork for that, and provide a working deb.
From this project it was also noticed that certain ROM releases were not compiled with optimizations enabled, presumably because as a release title the compiler had optimization bugs! www.resetera.com/threads/so-apparently-the-ntsc-build-of-mario-64-didnt-use-any-compiler-optimizations.166277/ But now they do have a working compiler, and by turning that switch FPS increases in certain levels!!!
It is good to know that this game will "never die".
Some quick stupid patches:
  • jump really high:
    diff --git a/src/game/mario.c b/src/game/mario.c
    index 5b103fa..83c9f40 100644
    --- a/src/game/mario.c
    +++ b/src/game/mario.c
    @@ -826,7 +826,7 @@ static u32 set_mario_action_airborne(struct MarioState *m, u32 action, u32 actio
             case ACT_JUMP:
             case ACT_HOLD_JUMP:
                 m->marioObj->header.gfx.unk38.animID = -1;
    -            set_mario_y_vel_based_on_fspeed(m, 42.0f, 0.25f);
    +            set_mario_y_vel_based_on_fspeed(m, 200.0f, 0.25f);
                 m->forwardVel *= 0.8f;
                 break;
Interesting entry points:
  • src/game/game_init.c
TODO: enable the level select debug feature! tcrf.net/Super_Mario_64_(Nintendo_64)/Debug_Content#Classic_Debug_Display They actually shipped quite a few debug features into the retail game, and they have been reversed too. I tried this but it didn't work (or I don't know how to enable the level select menu):
diff --git a/src/game/main.c b/src/game/main.c
index 9e53e50..b7443a8 100644
--- a/src/game/main.c
+++ b/src/game/main.c
@@ -65,7 +65,7 @@ s8 sAudioEnabled = 1;
 u32 sNumVblanks = 0;
 s8 gResetTimer = 0;
 s8 D_8032C648 = 0;
-s8 gDebugLevelSelect = 0;
+s8 gDebugLevelSelect = 1;
 s8 D_8032C650 = 0;

 s8 gShowProfiler = FALSE;
The enhancements/ folder contains a few sample patches.
Figure 1. Screenshot of mupen64Plus running on Ubuntu 20.04 emulating Super Mario 64 with the title screen hacked by Ciro Santilli based on the Super Mario 64 reverse engineering project. The title was on a string, so the hack was trivial! The patch used was:
diff --git a/include/text_strings.h.in b/include/text_strings.h.in
index 749179b..626f87e 100644
--- a/include/text_strings.h.in
+++ b/include/text_strings.h.in
@@ -131,7 +131,7 @@
  */
 // Main Screens
 #define TEXT_MARIO _("MARIO") // View Score Menu
-#define TEXT_SELECT_FILE _("SELECT FILE")
+#define TEXT_SELECT_FILE _("HACKED BY CIRO")
 #define TEXT_CHECK_FILE _("CHECK FILE")
 #define TEXT_COPY_FILE _("COPY FILE")
 #define TEXT_ERASE_FILE _("ERASE FILE")
Some tutorials of hacking it:
Video 1. FIXING the ENTIRE SM64 Source Code by Kaze Emanuar (2022) Source. Now that we have the source, modders like this are going nuts.
Ciro Santilli really liked the battle mode on this.
It is a shame, but this game just doesn't feel good. The controls are just not as snappy as Mario Kart 64, the levels are too wide which limits player interaction, and the weapons feel clumsy weak and unexciting. These are all aspects that the closed source smashkarts.io gets pretty well.
Quite good, Ciro Santilli played this a lot in 2021/2022, his user ID: ofo5fNy7wRNC1Cw94YVB4KMOW5f2.
The physics not as good as the original Mario Kart 64, and it is notably missing jump gliding, and generally not as sharp! But it is really not bad.
Some of the weapons were too useless that you are just better firing them straight away at wall immediately to get something better, they could have a little better balancing there. I'm talking about you gatling that takes 10 seconds to finish firing, and does not kill enemies immediately. You are better off just firing that gun immediately when you get it to be able to get another gun ASAP. They seem to have done some balancing there however.
It had no chat option, but in a way it was cool to be forced to communicate non-verbally with people whose usernames you got familiar with. Funny you can love people like that, without ever talking to them. The best way of doing so being tea-bagging by going back and forth on a player after winning.
Performance was sometimes a problem. When Ciro tried it again on December 2022, it was unplayable due to the impossibly large lag. Tiings were much better again in 2023 however it seems.
This game (1 or 2, can't remember) made an impression on Ciro Santilli for some reason.
Only many many years after playing it, after Ciro started getting more interested, did he learn that it was actually an adaptation of the Chinese mega-classic Water Margin.
The game puts great emphasis on the concept of the 108 Stars of Destiny, which never left Ciro's mind: making 108 allies, the main collectible of the game, allows you to make a more powerful alliance, and unlock better endings.
This is analogous to many traditional board games such as Chess, the concept is very natural and maps well into computer.
The downsides of gridworld games are:
  • it is hard to model speed in discrete worlds. When you 10x faster, when do you collide with something else that is also crossing your path?
  • they tend to not use vector representations of objects. So to have an object be 10x longer than another one, the naive implementation has to add 10 smaller objects. This becomes untenable as the number of objects increases.
Although Ciro Santilli is a big fan of plaintext files and of Vim, not so for games. Games must be easy to understand since they are just a toy.
Tilesets to the rescue!
There is great beauty here. Great beauty.
There's a beauty in the portability of browser games.
The fact that the browser is not the main gaming platform as of 2020 shows how crappy web tech is. There is no fundamental reason why it shouldn't be so.
Who needs a hackable general purpose computer, when you can buy a completely locked down computer that only runs useless programs for which you have to pay thousands of dollars to develop for, cannot run a large percentage of major titles from competitor hardware due to business deals (see also) and will inevitably reach planned obsolescence in 4 years?
He's good. Sometimes a bit repetitive, but generally pretty good.
Only the "original" videos matter. After those it became crap.
www.youtube.com/watch?v=h6DtVHqyYts Big Rigs: Over the Road Racing (PC) (2014) is perhaps his best video.
Reviews mostly old RPG and strategy games. And hentai games when it is possible to hide the porn from YouTube. He also sponsors Hentai and uploads it on his website: www.ssethtzeentach.com/nsfw
Ciro Santilli really likes his sense of humor, always going into "politically incorrect" areas, and often making fun of both dictatorships and the USA. He actually knows a bit about politics. Due to the nature of his humour, many of his earlier videos have been taken down from YouTube apparently, www.ssethtzeentach.com/videos mentions:
Ever since going full time, I'm usually very clean and stay out of trouble, but in the past a fair number of my videos were taken down.
The videos are also incredibly packed full of well selected edited-in "memes jokes". He particularly likes very short snippets of gay porn which cannot actually be taken down as porn, even though the obviously are porn excerpts, like the buffed dude blowing a kiss to his tit.
www.youtube.com/watch?v=sw8v5__Ytf4 Heroes of Might and Magic III (2018) is one of the best reviews. Sseth likes to find and make fun of game breaking imbalances, something that Ciro likes due to his Ciro Santilli's self perceived creative personality.
www.youtube.com/watch?v=rOJdDvf-tUs The Sseth Streaming Experience (2019), being a live stream, likely shows more realistically how Seth actually talks in real life.
www.youtube.com/watch?v=yG9g2byXR2c Might and Magic VI (Re)Review is another good video (2021)
Sseth has a certain vaporwave aesthetic, which Ciro also enjoys.
youtu.be/se6Y2o3OqJQ?t=2 shows what could actually be outside of his real window.
Ciro Santilli's favorites are:He used to also play some first-person shooters as they can be fun to empty your brain.
gobattle.io/#! 2D top down dungeon crawler/brawler, controls feel good.
A recreational computer simulation!
Conveyor belt 2D top down mining like Factorio, but with more emphasis on tower defense/real-time strategy, PvP looks a lot like StarCraft or Age of Empires.
As of pre alpha 135, the most annoying thing is that you can't easily start a campaign scenario from fresh, if you lose you have to start from wave 1 but with everything already half built as you left it. This gives you a huge advantage...
It is also annoying that you have to manually rebuild everything that was destroyed afer each attack, unless you have some unit that you can only unlock later on...
mindustry-unofficial.fandom.com/wiki/Future_Content#New_Google_Play_Listing suggests freemium features being considered, but they are mostly minor or plaform specific. There seems to be no server list by default however, making the Steam multiplayer freemium valuable.
It is a bit annoying that you have to unlock the tech tree little by little in campaign, but it does serve as a reasonable introduction to the general order of development. Games with progression state are boring, except when there is permadeath. But custom play scenarios have everything unlocked immediately, much better.
It is very cool that you can copy chunks of buildings as macros, and save them for later.
The game runs very well it feels like.
The logic blocks are particularly interesting, and allow you to program a block yourself.
The brutality of this game, the fact that you can get killed at any point, and all players accept that, is awesome.
A young Ciro Santilli really liked this game, the way it makes you feel.