Inspiration
I love card games, I have never built a game before (usually just websites or saas applications) so I thought I would give a go at meta horizon, and I thought I would give a go at something new that I haven't seem yet, in the hopes of learning something new and hopefully contributing to the community. And boy oh boy was I in for a surprise!
What it does
It is a 2d card game running on a CustomUI in local and default mode.
How we built it
The world consists or:
- An empty object which has a server script which is running a typescript on default (server) mode, this is what handles saving and loading user data, and keeps track of the leaderboard.
- A Custom UI - which runs a Game script locally and uses another typescript called the GameEngine which is a standalone bundled script of the entire GameEngine of bloombeast game (and it's over 21,000 lines of code!) This gameengine code is developed in a external editor and I have abstracted out the UI part and made an adapter for the Web so you can easily develop on the web first then bundle it up and transfer to horizon.
- A lot of textures and sounds created by me and generated from various AI sources.
Challenges we ran into
- Trying to create an adapter for web development to match horizion (had to create all the UINode types)
- Learning the differences between local and default mode, rewriting everything to local mode because server was too laggy.
- Running into too many binding issues
- Running into 64kb data limits
- Running into horizon caching issues
- Having no idea what I was doing half the time.
Accomplishments that we're proud of/ what we learned
I have learnt a lot, especially with the customUI entity and also the entire ecosystem. I created a nice adapter, that will help me in the future, and maybe help others.
What's next for Bloombeast
- I would like to finish the gameplay, there are still some glitches and things not working quite right
- Battling opponents in Multiplayer
- Extending and extracting my code to generic services, espeically the adapter since this could be useful to great future custom UI styling.
Built With
- horizon
- meta
- node.js
- typescript









Log in or sign up for Devpost to join the conversation.