I don't actually have time today to work on any side projects, but I thought I'd run through the basic setup steps for MonoGame aaaand
./bin/Debug/net6.0/MyGame
bash: ./bin/Debug/net6.0/MyGame: cannot execute: required file not found
... which required file ._. ???
I think this sort of thing means it tried to dynamically link something and failed. I run into this whenever I try to run loose builds of Linux games on #NixOS, but idk what to do about it.
I'm still stumped on how to get #MonoGame working on #NixOS, but thankfully I have another computer with a real operating system on it, so please enjoy this overwrought Hello World I made using MonoGame tonight:
I've made some progress on getting #MonoGame running on the hell distro! The surprise exit-without-error was a segfault (thanks strace!), which apparently was because #NixOS cleverly hid away udev, which is famously an optional component in all modern Linux distros. Now with that fixed, it simply cannot OpenGL:
"Unhandled exception. Microsoft.Xna.Framework.Graphics.NoSuitableGraphicsDeviceException: Failed to create graphics device!"
(fails somewhere in MonoGame.OpenGL.GL.LoadExtensions)
SteamInternal_SetMinidumpSteamID: Caching Steam ID: XXX [API loaded no]
Unhandled exception. System Exception: Callback dispatcher is not initialized at Program.Main()"
Preparing for the release involves a lot of bug fixing and playtesting. The game was too easy because there was a bug that prevented player from taking damage from some enemy attacks. Hopefully the game is now more balanced!
The 5th annual MonoGameJam is kicking off soon on the 30th of November 2023, which is by far one of the best ways to throw yourself into MonoGame and learn something new:
Does anyone have better solution for this?
I have XML files that I use to define my "gameobjects" and a parser class that reads the XML files and then creates correct components and state actions. It is working fine but only issue is that I need to have long switch case for all the actions. Is there way to make something that would scale better?
9 years ago, triumphantly holding up a #Xamarin monkey at the developer event they held at Atlanta.
That was the time I managed to corner Miguel de Icaza and convince him to white label #MonoGame libraries within the Xamarin runtime, making #Android and #iOS#gamedevelopment free for indies.
#OpenSource means you are never at the whim of a corporation, the code base can always be forked and continued, at the very least maintained.
#MonoGame is an open source game engine that emulates the old Microsoft XNA framework within open source Mono, meaning it can port to virtually anything.
This is also how #Unity does it. Which is why you use MonoBehaviour scripts and the Mono logo is right there in the Unity about window.
Holy shit. Back when I was in college, I was a very active member and developer for a #gamedev framework published by Microsoft called #XNA. After they shut down XNA, I moved to #Unity.
But apparently... XNA never died. It was reborn as the open source project #MonoGame. If this is half of what I'm remembering it is... it'll be amazing.
I can't believe I hadn't heard of this before today... Gonna try it out tonight.
About 12 Years ago I wanted to code a game and become a game programmer. So I ask a friend of mine and we started coding a game with XNA switching to Monogame as the support dropped.
We didn't had a clue at all and somehow hacked in stuff which did something. After some time we were thinking let's code a clone of cannonhill. What should go wrong, the game is old and it can't be that hard. After around 3 months of work we got something which did start and there where something you could call gameplay. At least you could shoot on each other and something was happening.
Since our code structure was so horrible we dropped the project and never touched it. We did try to code something with Unity which failed because the engine felt "wrong" to use. We wanted the full, I write my own engine experience.
Let's skip some years. The friend of mine lost interesset in coding and game coding. I started to work as a PHP developer as a fulltime job. Somehow I did think back to the old times with the game and searched my old hdd if there was still some code left. As I found it, this was around 4 years from now ago. I uploaded the project to GitHub and set me a goal to get it into a working state.
I rewrote the whole engine based on ECS, still using Monogame. I got more or less to the same state as before but with much more performance. There where less features, some stuff which was better some which were worse.
This project is still there on GitHub I do work on it for some weeks I get frustrated and stop it for a year. Still making slow progress.
Everyone out there, please pay respect for every solo developer who is coding a game in there freetime or as a business. They put in so much love and time. Maybe the game is even open source and playable without them asking for anything.
If you really want to start coding a game, start off with an engine. Do not try to code one on your own. If you do so be prepared that you will write a ton of code which will not display anything on the screen. This can go on for months, even years. Still try to complete one game it does give a boot, even if the gameplay itself is bad. Hand over your game to family members and watch them play as early as possible, you will get valuable feedback from there reactions.
Thank you very much for reading my story. I somehow was thinking it may help me to write this down.