Read Reconfigure Online

Authors: Epredator,Ian Hughes

Tags: #Sci-Fi & Fantasy

Reconfigure (9 page)

BOOK: Reconfigure
13.59Mb size Format: txt, pdf, ePub
ads

Zone was a tricky command to work on, she would have liked to have dragged a bounding box on screen to set the Zone size, but scaling was going to be hard enough with the render view. She opted for numbers, in individual boxes and a dropdown text for the operational parameters. It was clunky but she did improve it a little by being able to select the object central to the Zone on screen. She tested it by making the Zone shift to the coin and set the parameters to just a few points of units. The screen refreshed when she ran it and only the desk, coin and cap were visible. Her Reset Zone worked well too and shuffled all the objects back into view of her office. A view she was becoming almost bored with, but that’s testing for you!

She hit Save in FMM, something she probably should have done before, she thought. Her dialogue text asked for a name, she entered ‘slot3’. It worked too. She moved the coin the old fashioned way, picked it up and placed it down a few centimetres to the right. Then she tried Loading ‘slot3’. Each test she ran stacked knowledge on top of her basic guess about how this all operated. The coin was back at its original position, onscreen and on her desk. She pondered what Load and Save actually did with her brain, if she was part of it? Maybe that whole fractal level was a kind of slice of state? The state of her neurones and chain of thought were unaffected by the Save and Load before, at least at this <2709> level. It would be much harder to experiment away from this iteration. While the cap coin merge had been interesting, sub atomic levels could get a little out of control. Going the other direction, what if she could move the entire solar system accidentally into a black hole? Her mental blinkers came down. This sort of scary thought would just stop her getting on with the basics. She tuned in her mind and at the same time reapplied her smaller Zone command to the coin and cap.

The Translate routine gave her a bit more leeway to put some extra context and controls onto it. Roisin loved this part, when a language or set of dynamics started to form from the underlying parts. She put in shared code on all the display primitives. They were now not only rigid bodies, with a glowing selection. The primitives prefabs, when in Translate mode, had the familiar, to any 3d developer or virtual world builder, directional arrows for up, down, right, left, in and out of screen. Roisin used this on object UI to enable her to drag objects on the screen to new locations at runtime. She added check boxes to enable and lock particular directions. She was emulating the editor functions she used at develop time in Unity3D, but with her own twist and style. She tested this on the coin. Selecting Translate she locked the z and y coordinates with her UI checkboxes. Then she moved the cursor over the cube that said Coin, it glowed. She clicked and dragged the cube object which smoothly moved, but only left and right. Roisin had considered a realtime update to the World, with each tick of the update loop sending the Translate command to RC, but then thought better of it. For now, instead, she moved the coin on screen first, once happy it had headed a little to the right, 0.24 units in the inspector, she hit Apply. She ignored the Undo button her code offered her. Always good to have a back out, she thought. The coin blipped and appeared about 24 cm to the right of its previous position. As the onscreen 3D map refreshed it disappeared from the virtual world. Roisin was happy that her test of both a tighter Zone and whether she could move things out of the Zone worked. It was not always good to test more than one thing at a time, stuff got messy but she was on a roll, so sod it!

She reset the Zone onscreen and stopped the application so she could add more function. Attach and Detach were next. Getting the UI to indicate the order of attachment, which was the parent and which was the child, was pretty straight forward. She went for the first object clicked was the boss. She added extra dialogue for the Absolute and Relative parameters. The default was Relative, that seemed to be the safest thing to do. Absolute had those weird World breaking qualities, floating coins for instance. Detach worked the other way around, select the object to detach from the parent. She had not tried any sort of multiple inheritance, more than one object attached to another. It was always a mess in programming terms, for now she left it at a simple Attach and Detach.

She had not really played with Transform but was not surprised when she cloned the Translate code, changed a few lines of it and was able to stand the coin up on its edge with a few drags and a confirmation click. On screen she now had three coloured circles in each of the x,y,z planes that let her specify the rotation. She added a parameter lock, as with the Translate, and a handy set of presets for 90, 180, 270 and 0 degrees.

Examine stayed as a text layer popping up over the top of the virtual environment but with a slight alpha channel see through texture. It was a pleasing sort of Heads Up Display.

Roisin considered Split and Join. She decided to put them in a deeper menu called ‘Advanced’ and just coded up the calls with some basic parameters. She didn’t even wire them to the world. For now they went into the too hard box, which was also the too dangerous box. She re-labelled the Sub menu “Dangerous." Tempting as it was to label it ‘l33t’ she left it at that.

She couldn’t face the porting to iOS at 4am. She ran saves and backup commits. She went on to perform most of her bedtime ritual. She brushed her teeth, and her hair, as fast as she could. She dumped the clothes she was wearing into a mound on the bedroom floordrobe. She popped on some cotton trousers and a PJ vest with a yawning cartoon cat on the front and slipped under the duvet. “Ah! Comfort.” She thought. Sleep did not come straight away as she had to break her comfortable repose, cursing, getting out of bed to rummage in the textile mound for her iPhone. It needed to go to sleep tethered to its white cable of life. She was going to need a full battery to field test tomorrow. As she clambered into bed again it just didn’t feel as comfortable as the first time, but nonetheless she closed her eyes and drifted away.

Chapter 7 - Field test

 

There is something worse in the tech world than a CLI after all, Roisin thought. Provisioning profiles for mobile devices and their app stores! As the mobile world had developed and the mighty app culture appeared, the virtual land grab for control of applications and how to get a financial cut from the developers efforts to supply these platforms, had led to huge monolithic walled gardens. Now just to put an app on your own device you had to register as a developer, provide proof of identity then keep up a bewildering level of development and implementation keys and permissions. Yes, it was simple if you did it all the time, but when, like Roisin, you just wanted to put your own damn app on your own damn phone it got in the way, big time. A whole industry had sprung up in creating containers to help you deploy an app indirectly. Many of the big companies had then bought those up too. The connected world, great as it was, meant you never really owned a device anymore, it was on some sort of weird legal twist of a loan. It was a wonder anything ever got done but the corporations had all the developers over a barrel. Even the open source original efforts to bypass the big companies had succumbed. Android was not exactly a free and open ecosystem. It just had way more app stores to faff around with.

Unity3D to Xcode was nice and straight forward for the FMM app. Roisin added a few extra UI parameters to deal with a touch screen and simply did a publish to iOS. She had to set the magic incantation of package and company to meet the provisioning profile. That, being digital paperwork, seems to take longer than writing the application despite only being 15 minutes of password resets and accepting new versions of terms and conditions. The Xcode compilation whizzed through. The usual sets of warnings and blips, but she was happy to let it synch to the iPhone. The codebase itself was a few megabytes, the Unity wrapper far outweighed her code but it certainly made life a lot easier than coding native. In addition she could port to Android or anything else at any time. She also pondered an Xbox and Kinect interface.

Roisin was glad she had the larger screen of the 6S. She clicked the FMM icon with its standard Unity3D cube and turned the phone to landscape mode. She was used to seeing the virtual representation of cubes and her sphere on a 15” monitor, the mobile display looked tiny, or was it just far away? She smirked. Good grief, just imagine, Dougal from Father Ted with access to this sort of power! “Ah! Go on, go on, go on.” She said out loud in a mock Irish accent.

Already showered, dried and dressed in her usual jeans and now with a white t-shirt with a cartoon picture of Black Widow on it she felt ready to take on the World. Her iPhone was now her portable World changing device. She performed a coin move test with the phone, using the FMM app, and it was working just as it had on the laptop last night. No funny sandbox issues with the stream connection to RC on Twitter.

She checked the phone had a passcode lock set, which she always did. Sometimes she increased the timeout when using it as second screen. She wasn’t about to lose this, she was refreshed and being careful now.

She slipped on her red Converse shoes and her grey SuperDry hoody. The phone just squeezed into her jeans front pocket. She picked up her odd cartoon looking bag, full of all the essentials she might need, lip gloss, money, cards, keys, moleskin notebook, hand wipes. The handbag was a regular size but looked slight larger due to the cartoon cel shaded look that it had. The front panel looked like a 2d drawing of a 3d object in a video game. Thick black lines added around the primary coloured sections.

She set her house alarm and walked out of the front door, waiting for the warning beeps to die down and the tone to stabilise. Roisin locked the door and headed along the now busy and bustling suburban street.

She wanted to give FMM v1.0 a full on test in a densely packed area. She also needed WiFi, and coffee. Costa it was then! She braved the ever changing array of speciality coffees, teas and cakes. The sort of decision making for an order meant she needed the coffee to recover. “Just a large latte please. Oh! Go on then, with a vanilla shot in it.” She said to the barista. The coffee shop was bustling as per usual at most times of the day. She managed to find a table, but outside. She preferred being inside the glass, but needs must. It was not raining, it wasn’t sunny either. It seldom was. She slung her bag over the back of the chair. She left the lid on the coffee cup so that just a small wisp of steam spiralled out of the drinking hole in the complex shaped white lid. She tried not to look suspicious. Roisin knew a bit of pop psychology, trying not to look suspicious is the most suspicious looking thing you can do. She told her brain she was just checking her social media, just like everyone else sat around her staring at their small glowing oblongs. The WiFi was happily connected. She came here a lot. She tapped FMM, after a small delay as it dealt with the vast amount of extra data on the stream, her screen filled with thousands of cubes and labels all competing for her attention. Humans, Tables, Cups, Liquid, Jackets, Hats, Birds, Sachets. It was quite surprising just how many things the World is made of. Roisin was glad she had used the standard virtual camera control widget, it let her move and zoom her view of the World on her little screen.

Zooming around and orientating based on her sphere she managed to determine the relative position of the next table. The lady, probably on her way to her shift at a local shop judging by her uniform, had just stood up to leave. Roisin refreshed her screen and sure enough it left just Table, Cup and Lid cubes where the Human, Table, Cup and Lid had previously been. She clicked the cup cube, and using Translate dragged it one unit on the x axis. She received no warnings back as she hit Apply. A cardboard cup and plastic lid dropped to the floor, leaving a clean table next to her. The small percussive note of cardboard on concrete was released and amplified by the separating plastic lid. Roisin smirked and furtively looked around. Just with her eyes, not moving her head. To a passer by she was staring at her screen playing some sort of weird blocks game. A cup on the floor? Just a gust of wind after a lazy customer didn’t bother popping their rubbish in the recycle bin.

She was so pleased with herself, her test had worked. She was out in the World and able to clean coffee tables with a flick. Being hunched a little forward she did not notice her cartoon handbag doing a little levitation of its own. She did sense something and too late realised the lad in the long coat who had a bag identical to hers was heading off whilst trying to put the bag inside his jacket. She did a double take, it was her bag! Still clutching her iPhone she jumped to her feet shouting “HEY! MY BAG!” The chair didn’t slide back enough as she pushed it and stood. It caught in the gap between the paving slabs. Roisin went forwards as the chair pushed back at her. She swirled around the edge of the table and sent it clattering to the floor. Her coffee cup performing a more dramatic stunt delivering its vanilla enhanced steaming water infusion across the slabs. No-one else seemed bothered, just a few looks and tuts.

The lad with the cartoon bag knew he had not got away with it. He didn’t even look over his shoulder, just tipped his baseball capped head down a little, and started running. Roisin hoped shouting and screaming at the yob would cause someone to help. He took a turn to the right, past Greggs. Roisin had not been down this alley before, why would she? The bins at the back of Greggs were not a great place to visit. Something she realised even more, as she found herself facing a grinning idiot with a baseball cap, a long coat and mucky off white hi-tops, with an out of place cartoon bag in his left hand.

“Looks like I get a new phone too.” He said interspersed with a chew on his gum.

Roisin was just a few meters from the main street, she could hear people and cars going about their business behind her. They were completely oblivious to the risky situation she found herself in now. He dropped the bag to the floor. Her keys jangled inside as they were rapidly decelerated. His right hand reached slowly to an inside pocket and came out holding a knife. She had no such weapons. This was not going to be a “That’s not a knife… this is a knife!” He was standing there menacingly. His smirk got wider and the glint of a great payday was in his eyes.

Roisin had done some self defence classes. She had never had to use them. She didn’t want to start now. Even practicing with a rubber knife she knew that the outcome would not end well. Those toy blades always ended up bending as they scraped over her arms or body as she attempted to disarm her friendly assailants. This one was not friendly, nor was that blade rubber. He was not charging at her, he was feeding on her fear. He took a half step forward presenting the blade in as menacing a stance as he could manage.

“The Phone!” He snapped.

Roisin lifted up the phone in her left hand, moved her right hand to hold it too. It looked like she was about to present a business card to a Japanese executive with two hands. She was felling a rush of fear, but also an almost maternal rush of aggression to protect her bag. This mugger did not deserve her phone and access to RC either. That, she concluded, would be very bad indeed. She lifted the phone a little higher. She would let gravity, with a little extra impetus from her, destroy the phone. A second thought raced into her mental field of view. It was a much more aggressive and attacking idea. Could she operate FMM quickly enough? Whilst trembling and holding the phone her thumb hit Refresh. She saw on the screen amongst other cubes further away, cubes labelled Knife and Human1.

“Right, outta time babe!” He grimaced at her.

He was just sending the signals to his legs to rush forward when Roisin hit Translate on the knife. It clinked on the floor as it passed just 0.5 units to the right of its previous place, in his hand. The metal on concrete sounded much louder than her muffled keys in her bag had done when they came to rest a few seconds ago. Her would be attacker was confused. Probably not as confused as if he had not been quite as high as he was. He looked puzzled, then looked down at the knife, bent over and picked it up again using the momentum to launch towards his prey. Stepping back Roisin tried something else in a panic. She had been sure that disarming him would have confused him enough that he wouldn’t try again. She had no time to ponder the how or the why. His smile was now a frown come growl. She clicked and initiated something, anything. She probably should have Translated him, but instead she issued an ‘Attach Knife Human1 <0,0,0> <0,0,0> -absolute’ with a few frantic clicks. It was a crazy thing to try. He had a knife but she had a fast paced reconfiguring hunch. Roisin was still surprised at the end result. The knife again dropped to the floor. This time it was not totally alone. As the knife headed downwards it rotated to accommodate the apparently completely rigid human shape, frozen in its step forward motion and with a nasty snarl on its face. The new human shaped knife handle rolled around as the knife blade found the comfort of the concrete and came to rest. If it had not been for the adrenalin Roisin would probably have laughed at this odd situation. The yob was completely immobile. Like a fallen plastic toy soldier still in his running position. The folds and angle of his coat frozen against gravity and looking completely out of place. Roisin shuffled carefully to the downed mugger. She gave him a prod with her foot. Nothing moved, but she felt a solid resistance. She reached down to the knife blade and tried to pick it up carefully. It lifted, it was just a few centimetres of a foldable, but lockable blade. It should have weighed the same as a knife plus a yob. It didn’t. Instead she found herself holding a blade, point down, her former assailant seemingly floating, but still attached to the blade. It looked like a very macabre novelty balloon. The knife was definitely the parent her analytical threads concluded. She moved the knife so that balloon boy came in contact with the wall. She felt resistance like tapping the handle of a knife on wall. She carefully put the blade down again trying to rest the huge irregular handle in a way that it was not about to tip over. Still staring at it, with her gaze focussed on her handiwork, she stepped past it and picked up her bag. She glanced to the street, no-one was bothering. She was not sure if she had killed the bag thief. Certainly in his current state he was not going to be a productive member of society! She backed down the alley towards the main thoroughfare, flinging the bag over her shoulder to free her two hands again. She issued the Detach command just as she entered the busy main street. Physics took over and the plastic toy soldier became a rag doll. He was confused as he lay there sprawled on the floor. The last thing he had thought was that he was getting a shiny new phone, and maybe a bit extra from the cute girl. He must have been more stoned than he thought and blacked out or something? Roisin ran, the adrenalin fear replaced with a powerful shot of victory adrenalin. It’s the same chemical, the same rush spurring the body into action, but its feels very different when the context changes.

She half ran, half walked to her house, unlocking the door and slamming it behind her turning off the pre-warning beep of the house alarm. Now that was not one of your average test cases! If it was, it would have a big tick next door to it as having passed. She certainly didn’t want to run it again! It had highlighted some changes in the UI she would need to make. Once you give a system to real users in real situations all the clever cunning planning gets ripped to shreds. People do things, get in combinations of functions that you don't think of. Roisin needed a quicker way to deal with any assailant. A compound button or set of buttons. She wondered if she should, just for fun, make them a little random. Like crazy combos in an action game. Many a time she had hit, x, x, x, x, to see punch, punch, double punch, spinning backhand with a jumping pounce. Yay for combos! She thought. She should keep it a little more under control, but no reason to not add a few macro buttons to combine functions?

She headed to her laptop for a session creating FMM v1.1 drawing on all those games she had played and help create. Roisin started storyboarding some scenarios. She was in a combative frame of mind, of course she was, she had just ‘knife handled’ a bad guy and saved herself. She needed ways to deal with weapons and multiple bad guys. She also needed better identification of objects and types relative to her position. The Costa coffee cup Translate had been a bit of a hack as it was based on spotting the woman leaving the table to work out which one it was. A more frequent updating or onion layer ghosting of the World might make sense? That way she could track movement and match blocks to things. She had not even started to consider the good things she might do with RC and FMM v1.1 but she knew she would face threats again. The mugger wasn’t stalking her but she was sure someone would be after what she knew, eventually. That was how this stuff worked in every film she had ever seen. “Just adrenalin fuelled paranoia." Her sensible brain functions told her. She ignored it.

BOOK: Reconfigure
13.59Mb size Format: txt, pdf, ePub
ads

Other books

The Blood Binding by Helen Stringer
Hero of Mine by Codi Gary
Inside the O'Briens by Lisa Genova
The Story of a Life by Aharon Appelfeld
Necropath by Eric Brown
A Fine Dark Line by Joe R. Lansdale
Seven's Diary (Hers #4.5) by Dawn Robertson