Particl3D: 3D Powder Toy + Lua modding

  • Zatherz
    9th Feb 2016 Member 7 Permalink

    Particl3D is a game I've been working on recently. It's written in Lua with Polycode and as you probably know by now, it's a 3D particle simulation game that may be a bit similiar to Powder Toy.

    It's directly inspired by FSG3D, a game by CaveCricket48 from Data Realms Forums that someone posted here 5 years ago. https://powdertoy.co.uk/Discussions/Thread/View.html?Thread=10534

    I've loved that game to death and I've been planning since a long time to make something like it, but better!

    Here is the Alpha Test video of it: https://youtu.be/E8PUOhLcEqQ

    Current features are:

    • 3D world (obviously!)
    • FPS-like camera and controls (camera movement with mouse, walk forward with W etc.)
    • Placing and removing particles (duh)
    • Lua modding (nice API, custom particles with configurable color, timers, hooks, event things, etc. + full Lua capabilities)
    • Translucency support
    • Configurable world boundaries
    • Particle chooser (currently up/down arrow keys, soon a GUI)
    • Resize to any resolution without problems
    • Currently three different particles: Stone, Water and Smoke

    Planned features:

    • Custom textures for particles
    • GUI particle chooser
    • Much more particles by default
    • Loading in FSG3D particles.txt files
    • Loading in Lua mod files (currently modding is done through editing the main file, but loading in files will be easy to implement)
    • World saving

    Tell me what you think about it! I hope you're interested, because I'm enjoying writing this game :D

    Edited 2 times by Zatherz. Last: 9th Feb 2016
  • nijalninja98
    10th Feb 2016 Member 0 Permalink

    Honestly it looks really cool, and with plenty of room to innovate and develop both in game and for the game. I will wait for someone with more knowledge of developing in this line of application to properly evaluate it.

     

    But I like how it looks.

  • jacob1
    11th Feb 2016 Developer 0 Permalink
    I watched the video yesterday, and thought it looked pretty cool. It definitely has potential, but I guess that depends on how good the underlying code is. No code or release yet, so I can't judge that until later.

    It is good that you have such good lua support from the start. TPT has really bad hooks for creating elements, there isn't even a hook for element creation, or many other things. A good hooks system could allow lots of nice elements to be created without editing the source (well doesn't look like it would be hard to edit the source of this game anyway).

    Also nice that the playable area can be expanded. Or are the world boundaries infinite?
  • Zatherz
    11th Feb 2016 Member 0 Permalink

    The world is theoretically infinite, as there's no imposed limit on the size of the world other than the one you specify (for example, you can have a 5x5x5 world or a 99999x99999x99999 world if your computer will be able to handle that (the actual size of the world does not affect performance, only how much particles you put). Just felt like I should also mention this: the game will be open source (Apache or GPLv2 for the core game, haven't decided yet, standard particles will for sure be Apache-licensed).

     

    I'm done with loading mods, I've added a bunch of particles (including TNT and C4, Battery, Pulser, Wire etc.) and I'm at the point where I'm basically making the code better and adding some features (yesterday I added a cube fill feature, so that you can quickly make platforms and stuff like that).

     

    Once I'm finished with a GUI for selecting particles and HUD info for when you are in fill/normal mode, I will make another video and post it here too. I'm happy that you like it :)

  • DanielGalrito
    11th Feb 2016 Member 0 Permalink

    Any idea of when it will be open for the public? :)

  • Zatherz
    11th Feb 2016 Member 0 Permalink

    I expect to be finished with it by the end of this month, don't quote me on that though. Documentation is gonna take a pretty long chunk of time too.

  • Zatherz
    17th Feb 2016 Member 0 Permalink

    Just a bump, in case anyone thought I left this project behind :)

    Edited once by Zatherz. Last: 17th Feb 2016
  • Mrprocom
    17th Feb 2016 Moderator 0 Permalink
    @Zatherz (View Post)
    Nah, we are just waiting for new stuff.
  • CeeJayBee
    17th Feb 2016 Member 0 Permalink
    @Mrprocom (View Post)
    passive-aggressive Mrprocom strikes again
  • Zatherz
    21st Feb 2016 Member 1 Permalink

    Little update!

    As the OP says, the game is made with Polycode. It won't be.

    After a bunch of test with a lot of particles it turns out that the performance drops by a huge margin (bigger than in FSG3D, a game made in Java...), probably due to the fact how Polycode handles entities.

    A few days ago I found an open source Lua game framework that supports 3D as well, and seems to be performing better than Polycode. It's called Amulet if you want to check it out.

    Basically, I'm learning that engine and I will be redoing the game in it.

    Edited once by Zatherz. Last: 21st Feb 2016
Locked by jacob1: necro