Can You Dig It?

I attacked the tree stump outside the lounge where our new deck will be constructed today. I only needed my spade and hand axe. Two hours later that stump was gone. So now I just need to construct the deck but I will require some extra materials. I have the decking timber but need to get beams and joists. Hopefully I will get those by the weekend πŸ™‚

Nothing from Edwin yet, I think I’ll l pester him tomorrow. I thought more on the item modification management code and made a copy of it so I can experiment *moohahaha* Hopefully I can get it into a state that is easier to manage.

Advertisements

Monday?

Well Monday came and then Monday went. It is kind of odd that the simple act of going out to coffee group seems to suck most of the day away. Oh well, I’m sure there are plenty of other days to get stuff done πŸ™‚

No word from Edwin yet regarding Ghost Road item generation, maybe soon πŸ˜‰

In the mean while I have been thinking more about the management code. There seems to be stuff spread out over multiple classes and it would be much better if there was some way to get everything into one class with references only required in one or two others. As you can imagine there was a lot of smoke wafting from my ears today πŸ˜€

Step 6

Yep I’m still on step 6 of the magic recipe to creating items in Ghost Road. I’m following a fairly common method (or my interpretation of) that is used in most ARPG’s. The problem here is that whilst Ghost Road will contain elements of other ARPG’s, it might not contain this actual element. So I’m just waiting for clarification from Edwin about that. No reply yet but I’m sure he will let me know soon πŸ˜‰

I have been thinking for the last day or so about this item generation method a bit more and I am considering for my own ARPG that I might just have base items and with the exception of very few unique or legendary items, ever single item with enchantments (mods) will be created by the player. Besides being a point of difference with other ARPG’s.. the code is really much easier to implement and overall πŸ™‚

In the meanwhile I got to re reading that chapter on randomness this afternoon and it looks like for item generation at least the traditional math.random() method will be the way to go. One interesting thing here is that in the latest Gideros there is a new core.random() function which will generate the same random numbers across platforms. This is very cool even though I am only targeting Android currently. I’m actually still like 3 versions behind with Gideros as well because I have had a load of headaches previously being on the bleeding edge of Gideros technology πŸ˜€

Generation X

Not the group of people between Baby Boomers and Millennials.. Generation of item mods on Ghost road of course! Now generating items is not as trivial an exercise as I imagined it would be (few things these days are). In fact it is kind of an arcane magic in its self, and one I intend to master (or at least fake it till I make it) πŸ˜‰

  1. We need some rules (or procedure) to follow when generating items so I’m trying this…
  2. Determine what base type of item will be generated.. ie; Sabre, Shotgun, grenade, etc.
  3. Get the pool of mods that can be spawned on this item.
  4. Determine the maximum tier of any mod spawned on the item.
  5. Determine the rarity of the item (normal, magic, rare).
  6. Determine the number of prefixes and suxxifes
  7. Spawn mods on the item.

And “Hey Presto!!” we now have an item.

So today I got up to stage number 6 but need to think a little more about how to determine the rarity of the item. For now I have decided that when an item is generated 60% will be normal, 25% will be magic ,10% will be rare, and 5% will be unique. I feel these numbers are a good starting point but of course will most likely change over time.

The main thing to consider now is how that random number will be generated. You see there are quite a few ways to generate random numbers and right now they pretty much all escape me. So I’m off to bed to read Chapter 3 of Game AI Pro book 1 entitled “Advanced Randomness Techniques for Game AI Gaussian Randomness, Filtered Randomness, and Perlin Noise”. Now that sure is a mouthful eh? Wish me luck πŸ˜€

I also got to tearing down our old washing line and erecting a new one that I made in its place. It is very similar to the old one but is new and hopefully will work. The best part is that I can walk under it without it catching my head πŸ˜‰

I did a lot of cleanup around the area where I will build our deck as well. There was a lot of green waste there and it’s all bagged up now, ready to go to the green waste place at the local tip. There is a rather large tree stump in that area and I think I will get out my trusty Axe and Spade next week and attack it with some vigor πŸ˜‰

Then this evening because it had been such a fantastic day (mid 20’s)Β  we brought Turkish takeaways and drove to the top of Te Mata Peak and had food and wine there. It’s such a nice view up there. Unfortunately this evening had brought out a few serial loony tunes…

There were a few rowdy locals acting like morons. It seems that somehow these people think that it’s cool to go somewhere there are visitors from other countries and demonstrate to them how pig s**t stupid some New Zealanders are. It was really uncalled for.

There were the almost obligatory filthy smokers too *grrr*.. They should really f**k off from such a fantastic natural place and poison themselves in private. Nobody else wants their secondhand cancer breath!

Then there were the obnoxiously loud American tourists complaining to each other about how costly drugs are in New Zealand. One was like “OMG, Cocaine is like $400 a gram in Auckland, but at home in Seattle I can get it for $40 a gram. This place is a ripoff!”. It made me chuckle a bit and I wondered that if I hurled her over the cliff to her bloody mangled death sheΒ  would bitch all the way down about how hard the rocks were in New Zealand too.

A few minutes before we left some useless BOZO and his bint arrived with their f**king drone. It buzzed about for a bit and then.. just when I thought I had seen everything.. they posed for a… yes… a f**king Drone Selfie! I imagined the drone malfunctioning, causing it to dive at them at full speed, and the rotors slice their heads from their vacuous bodies! Mental note to self.. Research Drone Hijacking Technology.

Around the same time as Mr and Mrs Droney were doing their thing, a pack of under-educated simians arrived and decided that everyone needed to hear their stupid music… RAP Music (that has a silent C in there) about being an oppressed black person in the ghetto and having to get guns to kill everyone and get bitches and drugs and shit because money yo. Hmm, it’s at times like this that I think the human disg-race won’t be about for all that much longer.

However, our Turkish food was top notch, the wine wasn’t bad, the immediate company was fantastic (as always), and we had a beautiful view over the Hawkes Bay! Ahh.

Improvements

Today I tweaked the ModManager class to make it even easier to expand in the future. The whole system will still need documentation but it should be relatively easy work, even for somebody with as few peanuts rattling around in their skull as I have πŸ˜‰

I also began laying out code for creating item mods. I’m very excited *girly giggles* to get them working. I have also been thinking that I might need to mash this code into the ItemManager class since they are so closely related.

In other improvements I ventured out and purchased a lawn edger today. I’ve been meaning to get one of these for some time now. It took maybe two hours to edge all of our edgy bits (we have so much berm to maintain!!) and now it all looks rather fantastic if I do say so myself. It should be easy to keep the edges in line now, they were beginning to creep across the footpath and stuff.

New Stuff

Today a new class was created.. the ModManager class which as you can probably imagine is in charge of managing item mods in Ghost Road. So far it loads the mods.dat file, decompresses it, decodes it, decrypts, decodes the resulting JSON to a Lua table, and finally creates a heap of new tables containing sorted and types lists of mods that can be spawned on any particular item.

It works as advertised and now I’m thinking about adding the functionality for it to actually create random modifications for ingame items. This will be very exciting stuff, to me at least πŸ˜€

Revisions

I was coding away this morning getting the mods file to load and be processed in Ghost Road. I ended up having one section of code that I had to repeat many times (one time for each item type) and that code was 20 lines long. With so many items it started to be a rather large source file. I needed a better way to process the data file which in turn meant I needed a different way to store the data initially.

Aww man.. I thought I was done with all that. Obviously not πŸ˜€

So I have reformatted the Excel Spreadsheet yet again but this time I think I have it finally sorted. Instead of having a column for every item type to specify if a certain mod can spawn on that item, I just have one single column which contains ; separated strings of all the item names that can spawn that mod. This makes it a little harder to process, both in the conversion program and in Ghost Road but the code to do so is a lot easier to read and way smaller. I will see how this pans out over the next day or two *crosses fingers*

To change the subject just a little.. I’m finding that I am disliking religion more and more. Maybe it’s just my time of the month or maybe I’m just getting more and more fed up with the bullshit that the everyday person has to endure down here in paradise. So, with this in mind we will be screening more interesting propaganda like this here…

good_old_god_1

If you are one of those types that believes in invisible bearded men living in the sky then I’d love to hear what comes to mind when you see images like this.