18 Nov 2012

Another update of little import

Well, it's been a while. I apologise for the lack of info or anything, uni work pretty much pounced on us all at once a few weeks ago.

I also apologise for getting everyone's hopes up with the APS recode. It will have to go back on hold for now as I don't have enough spare time to dedicate to working it all out. However, the brilliant Seph has ported APS to 1.3.2, and you can all get it here.

As for my uni work, this is what I have:

Game Design - Make a paper prototype of a new Red Orchestra map, and do an MDA analysis on it.

Computer Graphics - Make an amusement park in OpenGL via GLUT in C++. No imported models.

Advanced Software Development - Use the Nearest Neighbour Search to recreate an image from a shuffled version and a noisy version. Then use NNS to solve a Where's Wally. In C++, which we only started learning this semester.

Group Project - In groups of 5, design and create a game prototype which demonstrates creatures with a genetics system, procedural generation and emergent gameplay. For this, our team is using Carthage.

As you can see, lots of stuff to learn and do.

However, I do have a present for you all. Carthage must be in a working state by January so we can start work on the game. It is currently in a private git repository on BitBucket right now, but I will make it available for you all to play with when it's up and going. Furthermore, I have permission of the rest of the team to continue work on our game after the conclusion of the project, and to release it here for free with the source code! If it turns out to be all we hope, it should be pretty damn good.

Finally, I have been telling everyone I know about a new, awesome Kickstarter project I found. Its name is Star Citizen, it is a PC-Exclusive AAA-grade space sim lead by Chris Roberts, the guy behind Wing Commander and Freelancer. Currently they have more than doubled their original goal of $2million (£1.25million) and there are still 27 hours (as of now) left. $37 (£23) will get you access to the Alpha and Beta versions. Oh, did I mention it has Singleplayer, Multiplayer (10 or so players) and MMO (full open-world) gameplay? And ships with interiors you can explore on foot? And EVA combat? And the single/multiplayer modes are moddable? And the devs will try to integrate popular mods into the MMO mode? Back it here!
EDIT: Video!


19 Sep 2012

Concerning APS source, porting and such things

I know a few people are interested in porting APS to 1.3.2, which I am fine with.

However, there have been a few complications.
First of all, the svn has been corrupted for a while, I don't know how or why but it's gone weird.
Secondly, it now seems that I've lost a good chunk of the source files of every version of APS on my computer, which is even stranger.

Luckily, I've managed to cobble together a (hopefully) complete set of source files from the svn (the files that haven't been corrupted and old revisions of those that have) but that now means that this frankensource has code for both MC1.1 and MC1.2.5. I am also backing this version up in an encrypted rar so that my antivirus (the prime suspect in the mysterious disappearance) can't get at it.

If anyone wants the code to try and sort it out and do a quick port, I can put a link up. Just ask.

In the meantime, I am slowly getting to grips with the client-server model and the new Forge, and will be working on a total rewrite. I don't know how long this will take though as I'll be changing and improving pretty much everything as well as hopefully adding some new stuff, so feel free to make straight ports until I'm finished.

Also, as I forgot to mention it before, if anyone is interested I got very good grades in my first year at uni. My lowest score in a module was 77%, my highest was 92%

EDIT: The svn is now working again. To get the old source (1.2.5 version, best I could find), checkout:

4 Sep 2012

Modding CZ2D

So, other than being brutally realistic, CZ2D is also designed to be very easily moddable (a la Minecraft). However, because it's written in C#, the game code is compiled into a single .exe, unlike Minecraft where all the compiled class files are left intact within the .jar, allowing you to individually replace them.

As such, I need to make it as easy as possible to modify without needing to change any of the code in the .exe (not that this can't be done, it'd just screw up compatibility).

This is particularly difficult for Items, as they can have custom actions and such, so modders have to be able to add the code for that. The system I have thought of so far to solve this is similar to that of Kerbal Space Program's, i.e. each item has a plaintext file giving its default properties (name, size, weight, inventory/world texture, etc) but in that file it can also reference a .dll and the name of a class within that .dll which implements an interface, allowing the class to expand the item's functionality. Multiple items can use the same .dll, indeed the same class if they want to act the same.

I will probably abstract many of the other parts of the game out to separate .dlls so that things like the world code, rendering or content-handling can be swapped out with modded versions.

I've also just about started work on the 3D version of the Carthage Engine, nicknamed Xana, and once it's done I will probably port CZ2D over to it, once I've added things like multiple floors.

5 Aug 2012

Update of no consequence

Look what I finally managed to get hold of!
The Serial Experiments Lain artbook! As my favourite anime, I thought it right that I get one, and it's pretty damn awesome anyway.

In other news, I also have a great new SteelSeries QcK Mass mousemat (optical mouse and black glass desk don't mix, I've been using a blu-tacked down piece of paper for the last 3 weeks) and an ethernet cable, which means I finally have internet on my desktop again!

In other other news, I've dual-booted my desktop with Ubuntu just for the hell of it. It's surprisingly similar to mac visually but quite cool.

On the Minecraft front, I have no idea when I'll get around to updating APS for MC1.3, I've kinda gone off Minecraft at the moment, been working on CZ2D and playing Terraria.

Bonus Image: A teaser screenie of CZ2D so far, including weapons system, inventory and equipment. Ignore the placeholder textures.

26 Jul 2012

I hath returned (kinda), CZ2D progress update and broken Kindle

So, we've finally got internet in the flat now, 30mb cable broadband from Virgin (and it actually is 30mb!), though we're having to share my laptop until the ethernet cable I ordered from Dabs arrives (it's a fair distance from the router to my desktop, and a 15m cable is cheaper and more reliable than a wireless dongle, it doesn't take up any precious USB sockets either). In short, I'm back online, but it'll be sporadic until that cable arrives.

In the meantime, progress on CZ2D is coming along swimmingly. The main HUD and Inventory screens are experimental, but working. The Magazine system for the guns is also working (for magazineless weapons like the single-shot hunting shotgun, you have a 24-round-capacity pouch to draw from).
The inventory system is pretty much fully working. The player has a general inventory whose capacity depends on several things, like the pockets on their clothes, the size of their backpack, even not having any weapons drawn will give you the small bonus of carrying stuff in your hands. They also have a set of specialised inventories called Pouches. Pouches only have a very limited capacity and can only hold a small range of items, but weapons and other wield-able items can draw directly from them (accessing the general inventory means stopping to refill Pouches by holding R or opening the inventory window). The player has one of each pouch automatically and cannot lose them, but their main functions is as a quick-access inventory, so can't be relied on for storing items.

I might be able to treat you all to an experimental version of CZ2D quite soon, but don't expect anything spectacular, at the moment the focus is on getting it fully functional, and the zombies are waiting until I can get my head around pathfinding.

The final part of this update is that my lovely Kindle 2 (the white on with the fancy brushed aluminium back) has died from screen failure after 2 years of loyal service. Unfortunately, as I bought mine just before the smaller 3rd-gen ones came out, the 2nd-gen has been out of production for nearly as long as mine has been giving my stuff to read. Hopefully soon I can gather enough money for the Kindle Touch 3G, which, while looking nowhere near as nice as the 2nd-gen, at least doesn't look like a toy like the 3rd-gen does, and has the benefit of a touch-screen to play around with.

I was halfway through Charles Stross' Jennifer Morgue too..
Which I highly, highly recommend, by the way.

17 Jul 2012

Moving out

So I've finally moved into a new flat with my girlfriend. It's a nice place, got my PC hooked up to the telly so I can watch anime while coding. Everything's going pretty good so far.

However, we won't have internet for a while. If I want to get online I have to trudge halfway across Lincoln to use the uni's wifi. As such, APS updates (which rely on me having the BC 3.1.5 source, which I still haven't found) will be delayed for a while longer, though I have in the meantime been working on my other minecraft projects and CZ2D.

I should be able to get online occasionally until we get internet in the flat, but expect a couple days delay on forum posts or whatever.

24 May 2012

Retrospective: Games Computing, Year 1

I've officially finished my first year at uni now. My last exams went pretty good, confident I've got a decent grade. So with all that finally done, I've decided to do a kind of retrospective showing all the new stuff I've learned or experienced in the past year. So here we go:
  • Learnt C# to a very competent level.
  • Learnt XNA and started producing a fully-fledged game and game engine using it.
  • Taken part in a Game Jam (24-hour Game Dev event) and successfully developed a game in the allotted time.
  • Learnt Java to a competent level.
  • Produced a working and fairly popular Minecraft mod.
  • Created a fairly successful blog with a reliable following.
  • Greatly increased my repertoire of watched anime and read manga.
  • Met many... interesting people.
  • Become involved in 2 university societies.
  • Learnt how computers work from physical, through component and operating system, to application level.
  • Gained a great appreciation for pasta.
That's all I can think of for now, but it shows most of the stuff I've done. This year was good.

22 May 2012

Fallout: New Vegas mod idea: PsychosisMod

I came up with this idea when I decided to try a F:NV playthrough as Kal (the schizophrenic mass killer from my writing of the same name) and decided that I needed something more to make the Courier into Kal. Thus, the idea of PsychosisMod was born.

The idea is that with the mod activated, the player has a constant urge to kill which can only be held off by doing so. This would make it interestingly hard to play a good character, as Kal is always attempting to be. Of course, this is still an idea because of a limitation in Gamebryo. While it is fairly simple to detect if the player kills a certain NPC, it's (afaik) impossible to detect if the player kills any NPC without adding a script to every single one. But nonetheless, here is the idea:


When the player awakes, they find a selection of strange notes in their pip-boy. Soon they develop a growing urge to kill which refuses to go away.

> The player must kill humans regularly in order to stave off psychosis.
> Killing non-humans also works but is much less effective (must be killed more often).
> Blood packs can draw out the onset of psychosis, but is by no means a solution.
> As the player approaches psychosis, they get less communicative (penalty to charisma, intelligence, etc.) and more violent (bonus to strength, endurance, etc.).
> If the player reaches psychosis, they pass out and everyone in the immediate area is killed, regardless of standing towards the player or plot importance (essential characters are still only knocked out).

As the player becomes more aware of the psychosis and, inevitably, kills more people, several perks become available. These perks change how the player reacts to the psychosis and also has permanent effects on the player's karma rating. They are given below in the order they are revealed. All the perks are mutually exclusive.

> I am a monster.
>> The player believes they are evil and the psychosis is a monster within them. They accept their need to kill but still struggle against it.
- Player may no longer achieve the 'Very Good' karma level.
- Approaching-psychosis SPECIAL affects are reduced.
- Blood packs immediately bring the psychosis closer, but then hold it steady for a longer period of time.
- Killing humans (even evil ones) gives a karma penalty.

> I am a nightmare.
>> The player accepts and welcomes the psychosis, believing themselves to be an angel of death or similar.
- Player may no longer achieve the 'Neutral' karma level or higher (always Evil or Very Evil).
- SPECIAL effects are permanent at a reduced level, only the positive ones increase as the psychosis nears.
- Blood packs and killing non-humans have reduced effect.
- Killing humans gives a large bonus to the player.

> I am a vampire.
>> The player believes in the Family of Arefu. They abhor killing and will instead try to stave off the psychosis as long as possible using blood packs.
- Similar to 'I am a monster.', however:
- Blood packs push the psychosis back instead of just holding it off, allowing them to be used as a permanent, if expensive, solution.
- Killing humans gives a large Karma penalty and brings the psychosis much closer, causing a 'slippery slope' situation where a player failing to keep up with the blood packs quickly degenerates into psychosis and will remain close to it until they can pull themselves away.

Comments, improvements or even a solution to detecting player kills would be much appreciated.

12 May 2012

Coming to APS soon™

This is a list of the stuff that will be coming to APS in the next few versions, sorted by time (soonest to least-soon):
  • Various edits, bugfixes and improvements. Small stuff basically.
  • Sort out the triggers and actions, especially the Tokamak's. They're so damn confusing to use ingame.
  • Add ComputerCraft Peripheral capabilities to the APS machines. Will allow near-absolute control over the machines so that users of ComputerCraft can fully automate their APS contraptions. See planned functions here.
  • Expand config control. Allow for more parts of the mod to be changed through the config.
  • Sort out some niggling things, like making the machines rotate like normal blocks (you know, like how the furnace always faces towards you when you place it). Will also likely change some of the textures so they are on the sides, not the tops, to fit with everything else.
  • Have yet another stab at SETS and LaserGrid.
  • Add a matter-transportation (read: Laser-based teleporter) system.
  • Add player teleportation capabilities to said matter-transportation system.
As you can see, I've not given up on APS. I've just been busy with other stuff (and working on Carthage/CZ2D, which is nearing its first working release) and will continue when my exams are over. I would have squashed a few more bugs over the past couple of days but the svn is being stupid so I can't redownload the latest source (if anyone wants to go to the APS sourceforge page, download the source files and send them to me, I'd appreciate it). I've now managed to get access to a recent source, but the svn is still being stupid. I'll have to make sure everything's working before I start on stuff, though it would appear the CC integration will require a bit of code jiggery-pokery to get working in a nicely structured way.

28 Apr 2012

CONTINGENCY-Z 2D progress update

Over the last week or so, while not working on my uni stuff, I've been quickly bringing CZ2D towards the first playable version.
Currently the player's movement is fully functional with WASD movement and mouse aiming, as well as having a highly-efficient map system which makes the map size limit arbitrary (only Clusters [a square of 16x16 Cells, similar to Minecraft chunks] which are currently in use are loaded, and nested LinkedLists are used to store the Clusters, which is much more efficient than a 2D array).
The gun system is about halfway to a working version, but I need to rewrite the raytracing and collision code before it will work properly. After that, only the Cell construction and collision system needs to be written before I can release an initial prototype version for you lot to try out!

I have also settled on the decision that all versions of CZ2D will be free to download here, along with the source code (and Carthage Engine on its own as a separate download for other budding devs), perhaps with a torrent link too in order to ease potential load on my dropbox. I will then be encouraging donations to support the further development of CZ2D, Carthage and my other projects.

However, I must clarify that CZ2D and Carthage will not strictly be Open Source. The CZ2D source will certainly be on a 'reference only' license, so that people can learn from it and use very small parts of it in their own projects, but not release simple modifications of the game (I don't mean a mod, which I will make every effort for CZ2D to fully support, but instead someone taking the full CZ2D source, editing it and releasing it themselves, mods will work by manipulating or adding to the existing system, rather than replacing it). I'm not entirely sure on the Carthage license yet. It will certainly be free to use to build games and changes and expansions will be encouraged, but certain things (such as the 'Built using Carthage Engine and XNA' screen that is hardcoded to show for a couple seconds on startup) will be unchangeable so that it's clear the game uses Carthage, and that Carthage is my engine.

I would love to get some feedback on what you all think on these decisions. I love the idea of open software and seeing Carthage become the engine behind many indie games, but I also want it to be clear that I am the one behind the project. Let me know if you think I'm going the right way about it, or if not, what I could change.

P.S. Two of my friends, freshly inspired by a certain anime, have decided to produce a visual novel and I have offered Carthage as the engine behind the game. Personally, I think it will be interesting to see how it turns out, and to see Carthage running a game so different to the one it's mainly being developed alongside.

31 Mar 2012

CONTINGENCY: Z 2D Game Bible - Vol. 1

I've decided to write a kind of 'game bible' (document containing everything about a game and how it works) for CZ2D. So here's the first part:

CZ2D: Rules of the Game no. 1:
'If you act like a dick, or start pretending to be Rambo, you WILL die.'

I think that sums up one of the main themes of CZ2D. It will be brutal, beyond Red Orchestra kind of brutal. So if you start running around shooting everything, you will end up killing yourself, either by the sound of the shots attracting a horde of zombies, or using up all your ammo or some such thing. However, if you're smart and you conserve your ammo and keep your wits about you, you'll be able to survive pretty easily and be dig out a good little virtual life for yourself in the zombie-infested wasteland.

As such, this is my design for the ammo-counter:

MS Paint mockups ftw!

So, this shows several things.
First, notice there are 5 bars. These represent the up to 5 magazines the player can carry for each weapon (if the weapon uses magazines), bar 5 is coloured dark grey because the player hasn't found a 5th magazine yet (they'll be fairly common though, most dead survivors you'd come across would have 2 or 4 magazines for the weapon they are carrying).
Second, notice that not all of them are full. This is where the brutal realism comes in, at some point in the past the player here has either swapped out a nearly-full magazine for a more full one or just not had enough ammo to fill the magazines up. Pressing the reload button (most likely R key) will make the player character swap out the current magazine for the most full one (not sure what to do if the current magazine IS the most full one, perhaps R should have a different function). Holding R, however, will make the player start refilling their reserve magazines, first with loose ammo from their inventory which is limited only by how much they can find and carry, and then with ammo from other magazines, taking rounds out of the emptiest ones to try and fill the others. This means the player isn't actually limited in the amount of ammo they can carry, just in the amount they can use at once before having to find somewhere to hide and reload.
Third thing to notice, there's a weird symbol top-centre and bar 4 is coloured light grey. This is because the player is currently using armour-piercing rounds (not the wisest choice against zombies, but perhaps useful if you want to hit them through something) and bar 4 is filled with a different kind of ammo. Not sure what key would be to change ammo type, maybe T.

So how does this tie in with Rules of the Game no. 1?
If a player starts being a dick (read: FPS gamer) and running around guns-blazing, constantly reloading, they're going to attract an awful lot of attention as well as end up with 5 almost-empty magazines (as the average FPS player is quite unable to cease firing long enough to reload them), thus they will die as the horde absorbs the last of their readied ammunition and proceeds to tear them limb from limb.

As always, feedback would be appreciated.

27 Mar 2012


Since finishing the ULCS Game Jam (24-hour game development competition, we didn't win anything), I've become adept enough at XNA to start work on my own game engine based on the framework. It shall be called Carthage, after a computer program which is one of the main plot points of a certain french tv series I used to watch. 

Carthage will be mainly a 2D game engine and it's already got content and config-loading capabilities (with a Dictionary [a type of collection] to hold each as a central repository). I've also started on image and text drawing utilities to make drawing objects easier as well as implemented the 'screen' system I used in our Game Jam game to allow for easy switching between scenes (screens can even be drawn under other screens, like in a pause menu).

Once Carthage is finished, I will use it to develop a top-down version of my zombie survival game idea (working title CONTINGENCY:Z 2D). It will draw from my original ideas for the game (which will be first-person 3D and made when I have enough experience) as well as using elements of other games, for example Minecraft's shaped, grid-based crafting system (though with multi-tier workbenches and tools).

The C:Z 2D's emphasis will be on realism and survival, so ammo and resources will be scarce and the player will have to be cautious, quick-thinking and highly resourceful in order to survive for long.

I will most likely release both Carthage and C:Z 2D for free here, probably with source code and documentation and accept donations should anyone feel I deserve some of their money.

Carthage is now fully integrated with the 'screen' system. Only the content required by the current screen is loaded and on transition, content not needed by the next screen is discarded. Switching between screens is now handled by a manager, making it much safer as well as having a blank screen to fall back on and prevent crashes.

11 Mar 2012

APS has grown!

A few things have changed for APS in the past week or so:

Firstly, the APS source is now on SourceForge here!
You can also view tickets (upcoming changes) here to see what's going to change in the next update and how far along we are with various features and bugfixes!

Secondly, I just said we, not I. Cybrshadow (or cybrshdw on the BC Forums) has joined me in working on APS, so far mostly doing bugfixes and adding small features (like a 0.75% chance to get gunpowder from flint in a grinder) but I'm looking forward to seeing what new things he can think of.

On a somewhat related note, I will have some assignments and exams due in a couple of weeks, so my contribution to APS might drop a little for that period. I am still determined to get 0.2.1 out as soon as possible (i.e. once we fix that bloody chunk error), and Cybrshadow should be able to keep the fixes and improvements coming while I'm busy with uni.

6 Mar 2012

Listen to me ramble!

If any of you are interested, I should be doing an interview on G3 Radio during my good friend Seb's show next week. It's on Thursday 15th between 7pm and 9pm UTC (London, Lisbon, etc. time zone) and there's a good chance I'll be able to answer some of your questions directly (they have a text chat for listeners to talk with the hosts) as well as explain stuff about me and why I made APS.

By the looks of it, you can choose your own nickname on the chat, so if you use the same as your forum name or drop a quick message, I should be able to see who's bored enough to hear me yammer on.

17 Feb 2012

M:AR screenies and MineRIE

Moar new stuff: My mods now have their own forum! Just click the link on the right, there's 12 ways to log in, including WordPress so you can use your BC Forums account.

As the title suggests, two things:

Firstly, a few screenshots of what I've been doing today (7.5 hours in the uni pub with nachos and trance music, click the images for bigger versions using the lightbox thingy):

MISSILES! And believe me, they look even cooler when you see them launch and watch the huge plume of smoke shooting backwards from the launch block. And they work like missiles too, start off slow then are accelerated in the direction they're pointing until the rocket motor burns out (about 2.5 seconds). Of course, this caused some problems of rogue rockets when I was working out the right thrust-to-burn-time ratio.

Secondly, I have resurrected my MineRIE project, which is a 16-bit computer based on the MARIE virtual architecture using redpower.
So far I have working memory (with support for up to 256 bytes, which the final version will have) and an 8-bit ALU (the part of the CPU that does the actual calculating, this will become 16-bit eventually).
At the moment, the ALU can do addition (and once the control unit is constructed, it will be able to do subtraction (by two's complement), multiplication (repeated addition) and division (repeated subtraction)) as well as multiple-bit-simultaneous (i.e. you can use all 8 (soon 16) bits of the ALU to perform up to 8 (soon 16) logic operations at once) logic operations (AND, OR, XOR, NOT and once the control unit is constructed also NAND, NOR & XNOR).

11 Feb 2012

Coming in APS 0.2.0

So what's to come in APS 0.2.0?
- All machines will share a single block ID! (IMPORTANT INFO)
- 2 New machines. The Blast Furnace (formerly Magmafier) and the Mineral Extractor
- The APS source code will be available for viewing as of 0.2.0b. It won't technically be open source and it'll have a license, but it'll be completely free to browse through and for the most part free to copy from as long as credit is given. As such, I am in the process of annotating EVERYTHING, especially the more complex systems.
- Perhaps some other stuff.

24 Jan 2012

Minecraft: Armament Renaissance

Good news, everyone! I have devised another mod that I shall develop alongside APS (though APS will still be my primary mod and as such will by the main focus of my efforts, so don't worry)

This mod is called Minecraft: Armament Renaissance and will include a range of firearms from the ages for use within Minecraft.

Now, I know what you might be thinking, have I not heard of SDK's Gun Mod? Of course I have, but to me it seems a little too 'OMG! GUNZ IN MIENCRAFT! ITS JUST LIEK COD!', no offense SDK. So I have created M:AR to do a similar job, but in a way which is much more in keeping with the Minecraft style.

Here is what I have designed so far (copy-pasted from the text file design document):

Minecraft: Armament Renaissance


Powder Shot:
4 from 1 gunpowder

Musket Ball:
16 from 1 iron ingot

8 from 1 iron ingot

Cannon Ball:
2 from 1 iron ingot

1 iron ingot

Incendiary Shell:
2 from 1 iron ingot & 1 netherrack

Kinetic Shell:
2 from 1 iron ingot & 1 obsidian

Explosive Shell:
2 from 1 iron ingot & 2 gunpowder

1 Powder shot & 1 Bullet

Small Rocket Motor:
4 from 1 gunpowder & 4 paper OR 1 from 1 Powder Shot & 1 paper

Large Rocket Motor:
3 gunpowder & 6 iron ingots

Singijeon (aka, rocket-propelled arrow used with the Hwacha):
1 Small Rocket Motor & 1 arrow

1 Large Rocket Motor & 1 Shell (any type, determining the type of the missile)

Handheld Weapons::

uses 1 Powder Shot & 1 Musket Ball
1 shot before reloading
Cheap to make
Long reload (5-10 seconds)
Relatively high damage
Lots of smoke?

Bolt-action Rifle:
uses 1 Cartridge
5 shots before reloading
moderately expensive to make
Short round change (i.e. pull bolt), Long reload (i.e. put in more cartridges)
High damage

Semi-automatic Rifle:
uses 1 Cartridge
10 shots before reloading
expensive to make, liable to jam
Medium reload
High damage

Mounted Weapons::

uses 1 gunpowder & 1 Cannon Ball
1 shot before reloading
Expensive to make
Very long reload (10-15 seconds)
Very high damage, with splash (i.e. explosion)

Field Gun:
uses 2 gunpowder & 1 Shell (any type)
1 shot before reloading
Very expensive to make
Mid-long reload (7.5-10 seconds)
Damage depending on shell;
Normal - Very high damage, small splash
Incendiary - High damage, small splash, large fire splash
Kinetic - Very, very high damage, almost no splash, can penetrate several blocks (only round that can pass through obsidian, though can then go no further)
Explosive - high damage, large splash

uses up to 256 Singijeon (i.e. 4 stacks) & 1 gunpowder per stack of Singijeon
1 salvo of Singijeon before reloading (all loaded Singijeon are fired in quick succession using a small, random delay between each)
Cheap to make
Mind-numbingly long reload
Low damage per Singijeon, but High combined damage

Missile Launcher:
uses 1 Missle (any type)
1 shot before reloading
Very, very expensive to make
Long reload (5-10 seconds)
Same damage as Field Gun, but longer range & a more ballistic trajectory (for firing over walls and such)


Handheld Weapons:
Using the weapon (i.e. right-clicking) fires, reloads or (in the case of the bolt-action) chambers the next round.
Ammunition is held in the wielder's inventory, the weapon itself will only hold up to 1 reload's-worth (i.e. 1 round for musket, 5 for bolt-action, 10 for semi-auto)

Mounted Weapons:
Must be placed as a block in the world
Aiming controlled using yaw & pitch sliders (perhaps add a new compass to aid in aiming)
Indicator of approximate range (range being subject to slight variation) to allow for better aiming
Ammunition loaded into slots in the GUI (1 shot/salvo at a time, e.g. the Cannon's slots would only hold 1 gunpowder and 1 Cannon Ball)
Fired using redstone? Or a GUI Button?
Buildcraft compatibility? (e.g. rounds can be loaded using pipes)

As you can see, the closest I have gotten to an FPS gun port is the different shell types, though I think that would be useful for proper multiplayer warfare, as the shells could be changed to follow different strategies or tactics.
This also means M:AR will likely be my practice mod before making APS multiplayer, as this will be a lot simpler to implement in SMP than APS which will requite syncing all sorts of stuff relating to power and crap.

Any and all comments are welcome. Unless of course you are a CoD freak asking for a desert eagle or AK47 or some such nonsense.

20 Jan 2012

Intuitive Programming Survey

Well lookit that, two posts in a day.
Anyway, I've decided to conduct a simple survey to see if there's any correlation between certain personality disorders and programming intuitively (i.e. being able to 'see' how to solve the problem, no need to plan it out).

So, if you have programming experience, professional, formal or amateur, have a go at the survey.
It takes maybe 10-15 minutes, not long, and once I have enough results I will publish here a set of graphs and charts showing the results. It's all completely anonymous, and more is explained in the survey description. If you want to back out at any time, you can do so by just closing the survey.

However, don't bother taking the survey if you don't have any programming experience.
Also, only take the survey ONCE please, this is just out of curiosity, but I think the results might be interesting.

Anyway, here's the link:

New Laptop

I've finally received the new laptop I ordered to replace my little netbook, which has been dying a slow, painful death. I think Dabs might have thought that increasing the size of the box might offset the dispatch delay, not that I hold it against them, they did sell over 200 of these in a week and they've been very quick every other time I used them, but yeah, the box they sent the laptop in is big enough for me to sit in.
But those waiting patiently for APS 0.1.0 shouldn't despair. I've made sure to pack all my laptop-coveting and box-sitting into this evening so I have the rest of the weekend to finish the update.

On that note, a couple more things that should be in APS 0.1.0:
Organics Cracker - Converts large amounts of organic materials into small amounts of oil, don't call it OP, it actually exists (in fact the cracking process is so good, it can even make oil from turkey carcasses, which it does). Useful if you REALLY hate the environment in Minecraft and can't stand to even go near SirSengir's biofuel.

Grinder - Allows for small amounts of more valuable materials to be extracted from large amounts of less valuable materials, for example small amounts of cobblestone can be found in dirt and even smaller amounts of iron can be found in cobblestone. There will be more processing options later, perhaps with each block having a random chance to produce certain things, or the ability to select what to search for in the ground materials, so that the grinding sequence can be branched.

8 Jan 2012

Coming up in APS 0.1.0

Here is the complete list of changes and additions for the next version of APS:

- Updated to Buildcraft 3.1
- Dynamic Textures now working
- Energy Director finally working
- Laser-Grid power transmission system added
- SETS power transmission system added
- Tokamak (Fusion Generator) rebalanced again
- Lots of laser effects added
- Solar power sorted out. Much less laggy now
- Probably more stuff when I remember them

Finally, as many people have noted that they like only parts of APS (mostly the energy store), I have decided to make the entire mod modular. This means that, using the config file, players can pick and choose which parts of APS they want. Don't worry though, it will still only be one download. Hopefully this will make it more accessible to people who only want one or a few of APS's machines.

Due in perhaps 2 weeks (after all my assignments are finished).

2 Jan 2012

Holy Carp.

Wow, never thought's APS would get Electric Sheep 2000 views in two weeks, I'm amazed.

Thank you all who follow and use my mod, you've made my first public programming project a wonderful experience. On that note, I am still hard at work on the next version of APS, I have finally got the dynamic textures working, upgraded to the 3.x branch to take advantage of new methods and objects, rejigged the recipes so that the machines must be assembled on an assembly table, added two new medium and long-range power transmission systems, added a LOT of lasers and worked out a lot of bugs and inefficiencies from the solar power plant.

However, the next update will probably not be for another couple weeks, I have a test next monday, assignment on the thursday (the one following the monday test), and another 2 assignments in on the thursday after. Also, if the mighty SpaceToad releases 3.1 within that time, I will update APS to work with that first too.

Also, with APS 0.1.0, I will be putting the download through adfly. For those of you who don't like it, I'm sorry, but it will be my very first earnings of my programming career, hopefully that can persuade you to wait 5 seconds.

Thank you everyone who reads this. You've made me sure this is where I want to be.