Monday, June 24, 2013

Angeland

Once upon a time, when we flew on wings of steel and nested like termites; when every man, woman and child could consult the wisdom of ages. An ancient race came to Urf and built a castle on an island. The walls of this castle reached further than the eye could see, and it would take a man half a year to circumnavigate. Assuming he could walk on water, for the moat of the castle was the sea itself. The castle was called Angeland.

The people of the day, sick with fear and pride, cursed the ancients. They used their wings of steel to hurl fire and hate against the castle, but their wings were torn from them. Swarms of men crashed against the castle, up the walls and into the sea, but their hate fell from the sky and boiled their flesh.

Then one day the door opened. The sun beat cruelly and the land scorned their pleas, so the men and women were hungry and entered Angeland.

= Floor 0. Eden.

Lidar and Oogle were free for the day. Their teacher, Feo Rosefelt, had entered the Maze yesterday and their school hadn't managed to arrange a substitute.

(They explore and discuss the Maze)
(They wander into a forbidden area and the walls begin to move. They hear faint cries and sacrifice their chance to leave moving towards them. They find a suspicious girl called Anghun.)
(They begin to explore the Maze. They are hunted by giant boar in a forest, nearly freeze crossing a mountain pass in a blizzard and are betrayed resting in a city of charcoal. Throughout this, hellish creatures pursue them and occasionally tear each other to pieces, although the children successfully evade them)

(The number 235235 becomes a theme, through puzzle solutions and chance arrangements of features. Usually it requires conferral to discover the full number. Many other six-digit numbers also crop up, all under 240000)
(Eventually they reach the end. 24-hour news plays on vidscreens on the walls; two years have passed and their home has been obliterated by war. A large crystal glows in the center of a vast room, condensation streaming down the sides. Periodically individuals or small groups go up to the crystal, place their palms on top and disappear.)

(Lidar and Oogle want to use the gate at 23:52:35, but Anghun refuses. Reluctantly, they enter on time and reach the next floor.)
(They are immediately faced with an angel. The angel offers them a devil's choice: serve the ancients together, or rule the Maze but forget each other. They choose to serve and are graduated to Maze Architects.)

= Floor N. Prime.

They meet Buds, who communicates through text message rather than remove his headphones. Buds introduced the timestamp system, intended to encourage only those who could agree to enter the gate together. An unfortunate side-effect is of encouraging those who enter solo to take the lower choice. They begin to watch maze runners and take particular interest in a pair not unlike themselves. Unfortunately, Anghun, transformed into a demon, has retained enough intelligence to find ways around the rule against demons directly harming runners. She taunts the boy into hunting her, then scares the girl into searching for the boy. While they are divided, she steals their food or equipment and they are eaten.

???
Lidar and Oogle become magical ponies and spread rainbows everywhere. The ancient ones finally die out, satisfied the universe is in good hooves. The End.

Monday, August 29, 2011

Gridmole reborn

I downloaded Unity, it's pretty fun. Managed to crash it once already! Turns out update scripts get called a lot; creating one object per call makes a lot of stuff.

The plan is to rewrite Gridmole under the new name Gridslam, with a 3D engine, particle effects etc. Oh and respond to more than one mouse button. Doing everything from scratch in pure JS/Canvas was extremely slow so I'm going to try Unity3D.

The original concept was a healing simulator. However I'm not that interested in a fixed range of 'spells'. I'm thinking I'll use a dragbox / holdclick model with an exponential efficiency curve and an S-curve for power (with a bump at the start).

Given Power (in points out of 100), Time (in seconds), Cost (points where click = 50), Efficiency.

Click: power 50, time <0.3, cost 50, E = 1
  - "Flash Heal"
Held click: X = (min(T,3)*10/3)**2, S = 0.25. Power X, cost = P - X*S*P/100
  - Power and efficiency both increase as you hold up to 3sec
Dragbox: S = (25+N)/100. P/N = X,
      C = N(P - XSP/100)
        = N(XN - XSXN/100) 
        = XNN(1 - XS/100) 
        = XNN(1 - X(25+N)/10000)
  - Power is equal for all targets, efficiency increases per target.

As a future improvement, I could add shield mode (-10% effi, adds secondary HP pool) and HOT mode (healing is delivered over T**3 secs, for some efficiency bonus).

So far this is a very smooth design. It needs some bumps to create pressure. The bumps will come from irregular incoming damage. Levels will consist of a number of Hurts, with an attack pattern (EG row, column, random(5)), frequency (probability of occurrence) and power level. With this degree of randomness, I'll need to cap the short-term DPS or (very) occasionally the system will go totally psycho.

When blocks take damage they will wobble and overextend towards red before returning. I'd like to add warning indicators to Hurts, which would make the shield mode more interesting and allow for prehealing. Ideally this would be meteors and dragons, but I'll settle for a red backdrop for now.

TBC

Tuesday, July 12, 2011

Roller life

With reference to: http://spectrum.ieee.org/automaton/robotics/robotics-software/042910-a-robot-that-balances-on-a-ball

It's hard to imagine a wheeled creature evolving. Scifi provides few examples, I believe David Brin touched on it (along with some very intriguing waxy-toroid creatures).

Let's imagine a Rolla bird. It is flightless but egg-laying, with thick fluffy feathers. The baby Rolla hatches in late Spring, as the first rays of sun strike its icy habitat and begin the thaw. It immediately lays an egg (unfertilised), half the size of the bird itself, and makes its first attempts at balance. As the thin snows clear, revealing the smooth glacier ice formed over polar volcano flows, movement becomes easier.

The Rolla sets out with its siblings in search of food. A pygymy spruce local to the area offers up pine nuts, just within reach of the infants. The pine nuts are difficult to digest for the small stomach of the baby bird and a substantial part is injected into the egg under its feet.

As the Rolla matures, this contribution is enhanced with additional enzymes and organisms. A nucleus forms within the mass of waste which becomes like a second stomach. The hardest parts, mostly bits of cone, are pumped outwards through a constantly extending network of cracks to expand and reinforce the egg. Softer parts which still carry nutrition are retained in the centre.

After a couple of months the Rolla has reached adulthood and migrates in search of a mate. Rollas are hermaphroditic and exchange ova while still upright. The foreign ova, injected into the egg, is fertilised by the DNA therein and begins to divide. The by-now thoroughly decayed soft food waste is consumed to fuel the growth.

No more than a month after conception, the adult Rolla bird lies down for the first and final time. Its frantic summer of feeding is over and winter stands in the wings like Death, beyond survival. As the days draw in, the adult dies and the egg is slowly buried in the snows. The thick outer shell and battery of nutrition will sustain it until the land is inhabitable once again, and this most independent of birds will hatch again.

--

I tried to introduce a couple of evolutionary triggers - a low-hanging food source and a killer winter not even a penguin could survive. The glacier ice is an attempt to explain WTF the place is flat enough for a wheel to work. It's still not the most probable of creatures but not entirely beyond imagination I hope!

The parent who dies before the child is born is rather compelling. Every year a new generation would be totally alone. It'd be interesting to extend this to a small planet, with an extremely long year and a civilizing race. Born in the snowy tropics, slowly migrating to the poles as the equator becomes uninhabitable then back again to breed and die. Each generation would discover the artefacts of the last as if a foreign people. The standard tradition vs discovery dichotomy would have to be reexamined when 'tradition' (IE following the example of prior generations) requires discovery. And of course there is a great, unavoidable extinction every generation.

Monday, July 11, 2011

Crazy cat man

Working towards my lifegoal of being eaten by my cats when I die, I've decided I will need a cat. I tried the Blue Cross initially but they don't have a Bristol centre. Foop. I tried a few others, including one VERY unfriendly site that pretty much said "Halo + mansion or GTFO" - and didn't even have any cat listings up! The RSPCA site was ok but they only have a few cats listed which is a shame as they must have a hundred waiting. I flatter myself that in this net-savvy generation there are an increasing number of consumers who like me are happiest not even contacting a provider until we know exactly what we want!

Fortunately I tripped and fell heavily upon Bristol and Wales Cat Rescue. They work out of people's homes which could a) mean they're big-hearted animal lovers doing their best on the cheap, b) a scam. However they have cat macros on the site! This substantially enhances their credibility. Also they have a cute rollerskating chick. A girl that is, not a baby chicken, though that would be MOST amusing.

I was planning on picking up a little princess but experience must be sinking in at last as I've decided an elder statesman will suit my lifestyle much better. Maestro the 14 year old, barrel chested and fit as a fiddle. Well, barrel shaped somewhere as he is 6kg. And possibly only fit as a very well-loved fiddle considering his heart murmur and the dental work he's just had done. I shall be purchasing insurance for the wee beastie.

On which topic - FOR SCIENCE! At least, a spirited inquiry. Animal Friends insurance is dirt cheap which reviews say translates directly to being treated like dirt. Sainsbury's allegedly double your premium after a year even if you don't claim, and do not necessarily inform you of this despite the terms of the direct debate mandate. Some others are also full of shit. More Than appear to possess something of a monopoly position in the market for "insurance wot pays up" so with their good selves I shall entrust the care of my feline companion.

Gosh I'm long-winded. Brevity may be the soul of wit, but verbosity is the full English breakfast. And so to vittels. Cats are naturally carnivorous in contrast to my addled self. I appear to be pursuing an oxygenarian or at least breadhead diet. Anyway while I'm not about to start force-feeding the poor creature spinach, I'd rather it didn't eat a) anything which hopes to be fois gras in its next lifetime, b) total crap. Item A rules out pretty much anything from Tesco. Item B is a slippery slope which begins with eliminating bacon flavour lard balls and ends with me preparing chicken sushi garnished with intestine and liver pate. Damned if my pet is eating better than me.

Suddenly! Bristol! It turns out one of the better kibbles is available from Roxford's which is about 25mins walk from my house. I'll probably drive since I'll be carrying about 10kg of used animal tissue home. Here's a picture.

So it looks like the scragball will cost about £22 in insurance and £18 in food (70g/day @ £21/2.5kg) per month. Ouch. He may have to subsist on Whiskas or some other proletarian gruel for a little while. On the plus side I may save on hot water bottles.

Go ducky gogogo!



Took about an hour. I made those clouds by hand then just as I'm finishing off I discover GIMP has cloud filters! Oh well, next time. I used some HSV noise and blur filters for the road, which was nice because drawing all those little dots would have taken FOREVER! The skate wheels have some DIY noise on them courtesy of an elliptical mask and the Galaxy brush, but noise filters are so much better.

It's time for bed. Tonight I have researched cat insurance, researched cat food, written a blog post about researching cats and drawn a ducky. Who says you go crazy when you live alone?!

Thursday, June 9, 2011

All action non stop internet dragon pwnage!

The only two things I really like about MMOs are new quests and fighting bosses. Quests require this whole persistent world, they're expensive. Screw that.

Let's make a game all about killing bosses. None of the fluff around it. You connect to the lobby. You pick your class, maybe tweak it a LITTLE. Not 12 items with gems and enchants, no way. More "blue Rohan" (fast hitter) or "red Rohan" (heavy hitter). Maybe 10 total skills, roughly half for core rotation the rest for utility.

Gear progression naturally works the wrong way. The game gets easier as you get better. Instead, kills on low difficulty modes should unlock higher difficulty modes. Alongside that, a ladder will control who you are grouped with to avoid that "waiting for everyone to get it" feeling. Since the game will have no persistent world, there's no need to shard the playerbase, keeping wait times low.

Let's make it free to play! Give away maybe 9 bosses in 3 arenas for free. Release a new paid DLC boss every... week? Is that really so much to ask? Offer a discount all-new-bosses sub and heavily discounted old boss bundles. Obviously it'll be easiest to find groups for the new bosses and all the buzz will be around the new bosses.

Let's make it fast! A raid boss is a natural 20 minute encounter. That's snacksize! You can do one before dinner without ruining your appetite (or being late to table). Let's put the tactics video right in the goddamn game, played by the devs, with their kill time for all the world to see. You can skip the video if you want to play blind or try to beat the devs if you're hardcore.

Ladder prizes... hmm... say, get to design a boss? :)

--

The impetus to writing this up was my survey submission to Trion after quitting Rift. I figured hey, even if they steal it without credit, I want to play it! But just in case I'll post the exact text I sent them here.

Make a PvE version of Bloodline Champions. With matchmaking by ladder.
Free to play, new bosses cost, old bosses available in packs.
Progression up difficulty settings, not gear.

Friday, February 25, 2011

Dwarf Fortress

I have downloaded the Lazy Newb Pack and am using Mayday tileset. I chose a smaller world because I am afraid.

Behold, as Sestanilush - The Decisive Carnage - sets off to found the great fortress of Lamlokast (Stonebutcher).

Ral Dodokoshur - Novice Leader, Amateur Sawbones
Mosus Stakuderib - Extreme Mining League
Olon Moruldolush - Ultimate Mining Union
Thikut Rabkulet - Deadcarver
Rovod Kekimedem - Mighty Masonry Inc
Fikod Atolzon - Lumberjack, soldier and teacher
Litast Dalkamgoden - Brewmaster General

Strike the earth! It called your mother a rude word.

The blasted wagon gave out near what is less a mountain, more a hillock. I plan to erect a statue garden on top for sunlight, good cheer and possibly a scouting tower. The rest of the settlement will be two levels down from the entranceway for security. There is sufficient space on ground level for a trade station in the entryway.

I plan to build around a central stairway. This should help me utilise the Z-axis for efficiency and possibly I could flood it (given a suitable sink) to irrigate farms and/or fertilise with goblinflesh. It may alternatively provide a buffet selection to marauding elfs.

Light is fading. We need stone and woodworking facilities up as soon as possible so that we might fashion beds. Bedrooms, a kitchen and a still are second priority.

Magnetite! From this we shall eventually extract iron and craft many cunning implements.

--

It has been some time now and I have several workshops up. I have even begun irrigating a farm, although progress is slow with our single bucket. Earthworks have been ordered to channel a nearby lake. I am concerned about Olon, she is staring at the door to the farm most intently.

--

Yeah that didn't last long. I love the idea and READING about it, but the micro requirement is just crazy.

Friday, February 11, 2011

Guinea pig valhalla

I am dull. SUPER dull.

However I did draw a picture of a guinea pig in guinea pig valhalla.


The West Wing is a very good show indeed.

This is a good way to write Javascript:
var LXS;
LXS = LXS === undefined ? {} : LXS;
LXS.MyClass = function() {
    var privateVar = 5;
    function privateFunction() {
        return privateVar;
    }

    var pub = function MyClass() {
        this.aVar = 2;
    };
    pub.prototype.publicMethod = function publicMethod() {
        return privateFunction() + this.aVar;
    };
}();

It's a lot like the Module pattern Doug Crockford proposed except it's a class. It probably isn't very original but I like it just the same. It helps you keep everything in a single global variable. I typed it from memory so it might be a bit wrong.

rice-boy.com and dresdencodak.com are wonderful. Gunnerkrigg Court is not drawn nearly fast enough and I'm trying to forget Girl Genius exists because I want more. Drive comic is very promising. I don't know why I like harkavagrant.com but I do!