Skip to content

hartl3y94/metahome

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fdarltrash%2Fmetahome.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fdarltrash%2Fmetahome?ref=badge_shield)

m e t a h o m e

an experimental game about experimentation in games, a journey into my mind.

this game is still nothing but a tech demo right now, but the engine currently supports:
  - tile-based maps encoded with MSGPACK (and a LDTK to MSGPACK map conversor)
  - tile-based rendering of tiles in a tileset
  - tileset loading and overall (limited) filesystem abilities
  - basic font rendering (thanks sokol)

things i need to add:
  - collision handler (and grid based movement!)
  - audio thingies
  - tracker music format support
  - entity handler
  - dialog handler
  - KOOL SHADURZ (VERY COOL)
  - packing every single asset onto the binary itself (hard)

things i may add:
  - GLES2 support (and thus, also native wayland support)
  - gamepad support
  - a level editor made in GTK4 (ooor imgui, that is also a posibility)


HOW TO RUN:
  you will need: 
    - [LINUX*] the xorg development libraries
    - [LINUX*] the alsa development libraries
    - preferabily a gl3+ compatible gpu
    - zig master 0.8.0
    - python 3 (i hate this dependency)
    - the python msgpack and json libraries (i also hate these, screw python)
    - a little bit of patience
  
  - first clone this repo
  - build the maps with "compile.py"
  - build the debug binary with "zig build run"
  - uhh, profit, i guess!
  
  If it shows up some weird error message like "hEY FAiLeD to INitIalizE Gl cOntEXt XD"
  then, you may need to try this out in a newer GPU or use ./run.sh and sacrifice performance.

  note: with "LINUX*" i refeer to the linux kernel and possibly some *BSD kernels like freebsd
  
  note: I have no idea of the outcome of this program or anything related to it and i am not responsible for that.
  i havent tested it on anything but linux, so if you do, please leave me an issue or something :)


HOW TO EXPORT (DOESNT WORKS AS INTENDED, WIP):
  you will need:
    - everything stated in the HOW TO RUN section

  - first clone this repo
  - build the release binary with "pack.sh"
  - now you should have a binary named "metahome" :)

  if it shows up the same stupid error, run metahome this way:
  LIBGL_ALWAYS_SOFTWARE=1 ./metahome

  again, consider running this on a newer gpu because this method will slow down
  things by a lot because it forces software rendering (which is normally slower than hardware rendering)
  

DEVELOPMENT PHILOSOPHY:
  i have been struggling with ADHD for a long while and i wanted to follow a programming philosophy 
  i call "first trashcode, then refine", which means that this code is utter garbage and it's like 
  that in purpose, so before anyone points something like "HEY U HAEV A CODEIGN PORBELM" out,
  consider that this is nothing but a DEMO of what's coming up next (which will also be open source).

  in resume: this code is garbage and i will fix it later, deal with it.

  
LICENSE:
  Copyright (c) Nelson "darltrash" Lopez 2021
  Check LICENSE and ASSETSLICENSE.


[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fdarltrash%2Fmetahome.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fdarltrash%2Fmetahome?ref=badge_large)

About

metahome: a game about nothing.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 80.3%
  • Objective-C 10.3%
  • Zig 9.3%
  • Other 0.1%