About Ptolo


Ludum Dare 33
Ludum Dare 32

Ptolo's Trophies

Ptolo's Archive

LD35 Progress Update 2

Posted by
Saturday, April 16th, 2016 5:01 pm

Well time to go to bed. Got super distracted by seeing what I could do with the particle system but there are now objects flying around of different shapes and colours. I guess this is turning into a spaceship shoot-em up? Gonna have to add some AI to these ships so they don’t just drunkenly float around, also interaction! (i.e. lasers)

thrust trails

Loving the games and concept art people have been sharing for this one, amazing how talented y’all are πŸ˜€

LD35 Progress Update 1

Posted by
Saturday, April 16th, 2016 5:34 am

Good progress on the various parts of the game engine. Got a sound system in which can create nicely harmonious procedural music (Pentatonic scales are great :D) The particle system has been improved and can be manipulated with the mouse. A screenshot misses out on the motion and sound so not much to show there πŸ˜›

particle trail

As for what this will end up as, I’m thinking a relaxing Zen toy where you can create music causing objects in a scene to shift shape. Creating falling particles is fun so perhaps gameplay is scattering seeds?

LD35 Progress Update 0

Posted by
Saturday, April 16th, 2016 2:20 am

Woke up this morning to see that the theme is indeed ‘Shapeshift’ as expected :3

More unexpected is the sudden shower of snow outside, truly British weather is a silly thing!

I got straight onto creating a new project folder and uploading it to Github. Took the time to sketch out the form of a particle system which results in this nice screensaver:


(although it’s a lot nicer in motion :P)

So whats next, character creation, gameplay planning, a concrete idea? Nah I’m gonna make a sound system! πŸ˜€

I’m In!

Posted by
Friday, April 15th, 2016 3:27 pm

Been looking forward to another Ludum Dare, almost forgot to post the customary ‘I’m In!’ message πŸ˜€

I’ll be sticking to nice and familiar Javascript and will be using Atom as my code editor. Looking forward to trying out some procedural sound generation I’ve been learning how to do.

Far too tired right now, will be off to bed so that I can get up 6am local time tomorrow to get cracking!

I’m out

Posted by
Monday, December 14th, 2015 11:41 am

It pains me to say this but I won’t be able to submit anything for this contest. I started feeling unwell on the second day and have not improved :( A real shame as I was trying some novel techniques, too sick to continue though…

EDIT 15/4/16:
Wrote up a post mortem on this attempt on my blog here

LD34 Progress update 5

Posted by
Sunday, December 13th, 2015 10:04 am

Been a while since the last progress update, I’ve been busy but don’t have much to show for it: decided to revamp my program structure to have independent objects in the 3D scene. Got all that done but now the lighting messes up when they move :/ Oh well, here have a gif:


It might look nice but I am still a long way away from creating something playable. I remember something about never trying to start a game development project by building an engine, oops πŸ˜›

LD34 Progress Update 4

Posted by
Saturday, December 12th, 2015 6:15 pm

Well I think thats enough done today. Map is looking good and everything seems to be displaying correctly. Tomorrow I can worry about user input and simulation updates -_-

scattered boxes

Have a big ol’ world with lush biomes and sunny beaches. Started putting down some little agents but I’m going to need to keep track of each model individually and I’m too tired to start on adding that structure. Best of luck to the folks where it isn’t near midnight or who have woken up for Sunday already πŸ˜€

LD34 Progress Update 3

Posted by
Saturday, December 12th, 2015 3:12 pm

Been experimenting with what can be done to bring volume to a 3D scene. Rather chuffed with my method of creating an ambient occlusion texture:


This will be what the world is like when you first come to it (who knows the red cube could be you spaceship? πŸ˜› ) A lifeless, barren rock. Your objective will be to look after the world and cause life eventually arise upon it.

Still a lot to do though, having a spinning planet and starscape is all very well and good but there still isn’t any proper interactivity! I’ll see what I can get done before tomorrow :)

LD34 Progress Update 2

Posted by
Saturday, December 12th, 2015 11:23 am

The planet is looking a bit nicer, here is what it will look like when the player starts the game all rocky and barren…





The height map is looking alright, some distortion near the poles though. The planet can be spun around with the mouse currently. The red cube is just to show another object in the scene, will probably get rid of it once I decide on what the gameplay will be πŸ˜›

LD34 Progress Update 1

Posted by
Saturday, December 12th, 2015 7:03 am

Right now that the basics of rendering a scene are out of the way I can get onto making some content:




I think this lighting will do, have to implement a proper map generation function now though :)

LD34 Progress Update 0

Posted by
Saturday, December 12th, 2015 5:18 am

There is something wonderful about opening a blank project folder and slowly watching the contents come together. I get to try all the neat ideas I’ve had about structuring a project’s files to be as clean as possible :3

3D rendering sure takes quite a bit of work if you start from scratch though! I had a couple of previous experiments I could take program structure and shaders from but two hours in this is what I have to show for it:

framework complete

I know, wow indeed πŸ˜› Time I get onto actually having something to display on the screen!

Ludum Dare 34 Begins

Posted by
Saturday, December 12th, 2015 2:25 am

Well I’ve just woken up, so what theme won? Oh, oh I see… πŸ˜›

Having a tie between two themes is pretty neat actually, I like “growing” as a concept and “two button controls” sounds like an interesting challenge.

First steps first, heres the project repository.

I’m in! Third times the charm

Posted by
Thursday, December 10th, 2015 5:34 am

Another Ludum Dare and another requisite “I’m in!” post πŸ˜›

Plain JavaScript worked great for the last competition so I’m going to be returning to it once more. Just a solo entry this time (folks have exams right now :/ ) so don’t expect much in the way of sounds or graphics.

But! Because I’m always up for a challenge I’ll be making some sort of 3D rendered game this time, not something I’ve really tried before πŸ˜€ It’ll probably end up as a neat tech demo/software toy type thingy.

Tools: Got the AtomΒ IDE recently, faster than Netbeans and more features than Notepad++. Paint.Net will be there if I end up needing images.

Good luck everyone!

LD33 SwarmLord Post Mortem

Posted by
Wednesday, August 26th, 2015 2:23 pm

And so the Game Jam has finished, I’ve had a chance to relax and started looking through all the many other games have been made. The done thing is to now post a retrospective on the competition; spoilers it was a blast πŸ˜€

First the good:

Theme(s) I enjoy the excitement of waiting for the final theme to be announced and often have several game ideas bouncing around for many of the suggested themes. During this Ludum Dare there were dozens of themes that I liked the sound of so I did the sensible thing and combined them together into a project I was enthusiastic about. πŸ˜› The final theme ‘You are the monster’ was simply the icing on the cake as I am fond of the likes of the Zerg or Tyrannids in strategy games. Being alien monsters is just fun πŸ˜€

Clear planning of code structure I have learnt so much since first starting off coding in Dark Basics years and years ago. This project was a chance for me to test my skills and show to myself that I can create something as challenging as the engine structure to a whole RTS. Overjoyed at managing to achieve this level of smoothly operating complex system. I had a mental plan of action and was able to churn out nearly all of it in a short space of time.

Achieving new programming challenges So many things in this game are novel for me; first Javascript game that is hosted and embedded into another webpage, team based effort with multiple people’s art/music assets, sprites with rotation, heck I don’t think I had ever used premade images in a Javascript project before πŸ˜€ Onwards and upwards!

Delivering a team based project This was a big one for me as I haven’t had much experience doing an interdisciplinary project before. Having to coordinate artists and musicians was a new challenge (even if they were my siblings :P) and it was more complex than working solo. The finished project is much richer for their efforts though and I feel everyone delivered some stellar work.

The not-so-good:

The genre of RTS is hard It was a real struggle to include everything I wanted into the interface of the game and I was always realizing I was missing something integral to making the game playable D: The game mechanics were all in pretty early but there are so many feedback systems needed to make the gameplay understandable. I feel like I could have done a better job on making the system transparent and fell into the trap of assuming players would be familiar with the control system I was going for -_-‘ Next time I’ll aim for a more intuitive experience.

Using pure Javascript This one is two-fold, firstly the coding I have done most recently has been in Java so my Javascript is a little rusty. I had to spend a lot of time looking at online reference materials and checking old code snippets for how to do things. Whilst part of me enjoys making programs from scratch another part of me knows that I would be much more productive using a pre-made engine. I keep wanting to get into using Unity, I just want a little longer to figure out the fundamentals ok? πŸ˜›

Aiming for two competitions at once Initially I wanted to attempt both the solo competition and the game Jam, probably because I only had experience of the solo compo and wanted to achieve that feeling of managing accomplish everything myself again. Essentially I got greedy… What this meant is that I spent a lot of time working on assets which ended up completely replaced in the Jam version. It would have been better if I had been incorporating my collaborators work from the outset. It was much nicer to see the program with all the aesthetic choices added and made motivating myself to finish easier :) Using art/music assets had some unexpected pitfalls, I had to take into account that the assets took much more time to load than code source files. There were some issues with some browsers not being able to decode the sound files too.

Time management No surprises that this is here πŸ˜› Two/Three days is an awfully short time span to complete anything. Whilst I feel I managed to implement most of the features I wanted so much content was left on the cutting room floor; levels, dialogue boxes, more terrain features, some AI. What we managed to produce was more of a minimum viable product albeit a very nice looking and sounding one. With some more time this code base could be so much more. Next time I will probably allocate more time to planning and implementing game scenarios. Also sleep, goodness I was so exhausted as soon into the contest as Sunday :/

In conclusion. It was such a rewarding effort to take part, for the swarm! πŸ˜€

(sorry for the wall of text here…)

LD33 Progress Update 11 Done!

Posted by
Monday, August 24th, 2015 5:32 pm

And at the 11th hour more or less πŸ˜›

Start screen


SwarmLord is complete and you should all go and check it out. I’m keen to hear how people find it and to show off the neat game assets my collaborators made, couldn’t have done it without them! πŸ˜€

Play SwarmLord!

LD33 Progress Update 10

Posted by
Monday, August 24th, 2015 3:20 pm


  • Sprites? check
  • tileset? check
  • music? check
  • sound? check
  • gameover screen? che- oops! XD

Still got a few things to wrap up before submitting our game jam entry, I’ve been a bit blind-sided by needing to implement a Loader function to handle all these assets. They are a thousand times bigger than the total filesize of the code itself :O

[cache: storing page]