Development Blog

Sharing Scripts

by Mike on Sat Apr 14, 2012 10:33 pm

Together, miroki123 and I have worked on allowing users to share graphical scripts, a feature that I've been excited to realize for quite some time. Whether it be shared in a tutorial, on a forum, or over e-mail/instant message, it's now all possible without having to go into the ever-so-unsupported text-based scripting.

All you have to do is open a script and click "Share Script" from the "Script" menu. It'll be sent to the server, the server will instantaneously respond and a window will pop-up with:

1. an identifier that you can include inside a tutorial
2. some phpBB code so it can be posted on the 001 forums
3. a URL that you can post on other forums or send as an e-mail or instant message

Conveniently, someone else can click "Copy to Clipboard" and paste that graphical script right back into 001 as a graphical script, no different from copying events from one script to another.

Here's an example:



Note: Subscribers are currently the only ones that can copy this script back into 001 as the latest version of 001 is needed.

Click here to discuss this blog entry.


New Sprite Editor

by Mike on Sun Oct 23, 2011 9:59 pm

After about two months of hard work in what little spare time I had these past few months due to job and life, I finally just finished the new sprite editor and system. It's nothing that's never been done before - in fact, most of the features were available before... it's just a lot easier now.

If you're a subscriber, read this page anyway, then go grab the new beta. If you aren't a subscriber, I hope you want to be ;).

Main Interface

As you may or may not notice, a lot of features that used to be done in a separate convoluted window, is now all fairly integrated.

main.png
Main Window


Frame Number and Size

What I do hope you notice is that there's no longer options for frame number, width and height. This is now implicit. But even further, it's not irrelevant. You no longer have to manage your own sprite sheet - it manages it for you. This allows you to have animations with different number of frames, with different width and height, and unique offsets.

sizes.png
Frame Sizes
sizes.png (1.06 KiB) Viewed 4740 times


Adding Frames

You may also notice the new "Add Frames" button. As I said, the number of frames of one animation can be completely independent of others. The benefit of this, is that you can add some blank frames as before, or import a series of images that you may export out from another software package.

add frames.png
Add Frames
add frames.png (2.46 KiB) Viewed 4740 times


Categories

Category is now an option instead of a tab. This allows you to quickly pick the category, of course. But what it also does is it allows you to create your own categories.

categories.png
Custom Categories
categories.png (462 Bytes) Viewed 4740 times


Animations and Layers

What used to be only available for bodies and shirts (and even then, used to be limited to 2), is now available for any category of sprite. This allows you to have multiple animations to a sprite that span different layers (so you can still properly get those arms to interweave with the sleeve and shirt).

animations.png
Animations and Layers
animations.png (3.43 KiB) Viewed 4740 times


Pose and Direction

You'll quickly notice that the 8 boxes for each direction was replaced by a big direction selector. If you hate me for it, I do apologize. I do plan to support 32 directions some day. Not today though. You can still see if there's an image in a particular direction by the tick being replaced by a little circle.

pose and direction.png
Pose and Direction
pose and direction.png (3.37 KiB) Viewed 4740 times


What is neat about the pose selection, though, is that all the ones that actually have content in them are bolded and shuffled to the top. So your custom pose that you love so much, will be right where you need it.

Graphic Options

I think I went a bit overkill with this one. That being said, ignore what you don't use. And at least it's hidden off in its own window, and completely optional.

This window, fairly similar to the effect window, allows you to edit how it reacts to the actor's tint and surrounding lighting. It allows you to make a sprite become an overlay or particle effect as well. There's also an option that determines if the sprite will become smooth when you scale it (with the "Resize Actor" event).

options.png
Graphic Options


The other part of the window, which is still in experimental stages, is the Retrieve system, seen in the field editor. This allows you to script the way a sprite's animation appears depending on a value. This system was made so that the propeller on the helicopter, the motor on the boat and the gun on the turret, could work without a special hack. Finally. You could bring this further and make a part of the character glow when their health is low or if they're out of ammo - and you don't even need a timer to do it!

Sequencer

As effects had it, the sprite editor now has it. Except, this time, it's considerably easier to use. You now can select a node and change the location/size/rotation/color right on the spot (without having to estimate).

If you're afraid of it, that's fine. But it now has the collision and holding point editing right there. This time, the collision editor allows you to change the collision and holding points (where it used to only let you create replacements). Also note that this time you'll actually be placing the sword in their hand, rather than a "T". In the case of no preview held item being selected, you'll get a much more visible cone to replace that old "T".

sequencer.png
Sequencer
sequencer.png (9.43 KiB) Viewed 4740 times


The added benefit of the sequencer is that you can spice up the sprite with effects and position certain parts of the sprite at different spots without having to create huge sprites wasting valuable memory and resources.


I hope that you all enjoy this when the new version comes out. As usual, I greatly appreciate the financial support from subscribers, and in return, this long-awaited beta is up for download.

Click here to discuss this blog entry.


Multiple Players, Testing and Forces for 1.9

by Mike on Fri Feb 18, 2011 12:41 pm

In addition to cursor events, mouse triggers, create/spawn actor events, tables, new mapping tools and custom poses coming out for 1.9, I figured I'd reveal a bit more that should be coming for 1.9, which will likely never be released because 1.8 seems to keep getting updates ;).

I figured it's been a while since I posted any news, too.

Multiple Players
With the following simple control changes:

controls.png
Controls

You will instantly be able to have multiple players playing on the same computer. Do not confuse this with the super awesome Online Multi-Player that hasn't been developed yet. Absolutely no changes have to be made to the Input Scripts. "main" will automatically associate itself with whichever player is involved with the appropriate control setup.

Split-Screen
Now that 1.9 no longer assumes that you want a single screen, you can design your screen interface to have four screens. Or two. Or six. Or one hundred.

split.png
4-way Split-Screen
split.png (5.37 KiB) Viewed 8204 times


Picture-in-Picture
Similar to split-screen, you can also do some neat picture-in-picture stuff. You could show a little character editor, as seen in the following picture. Or you could demonstrate different tactics in another map. Or you can show a door you just opened through a switch.

picture in picture.png
Picture-in-Picture


Test Interface
Nothing too exciting here - similar to the Test Map feature, except your Interface is all that gets loaded. Pretty useful for those advanced users wanting to test interface functionality as they're developing it.

Test Script
This allows you to test a script you're working on. Most useful for Custom Events that you want to try to pass in some test values and see what happens at the end:

test script.png
Test Script
test script.png (5.69 KiB) Viewed 8204 times


Forces
For such a long time, people have been running around trying to get this to work. Some people did manage to do it, especially with the release of the "Collision Branch" event. But now there's an actual system for it.

You now have the ability to push an actor in any direction at a certain speed for a certain period of time. You can use this to push actors away when they're shot at. You could also do some neat wind stuff. Or you can finally properly do wall jumping.


As usual, subscribers currently have access to all these features right now. If you want to try these out right now, subscribe and instantly have access to all of this.

Click here to discuss this blog entry.


Massive Coming New Features for 1.9

by Mike on Sat Nov 27, 2010 5:19 pm

Since the last version has been taking a few versions to be rid of bugs (think we're there now finally!), I have been working on some less vital, but definitely incredibly useful features.

These features include:
new mapping tools
tables
attaching effects
actor spawning
custom poses
actor timers
new actor triggers


If you want these now, you can now subscribe without a credit card finally.


Mapping Tools

Ever want to make a road wider with a single click?
inserta.png
insertb.png
Did you notice the zone on the left was stretched appropriately?

Ever want to remove that very same road?
removea.png
removeb.png
Did you notice the light and character were removed too? Don't worry, works with undo/redo. I may also add an option to ignore objects.

These tools work for columns and layers too!


Tables

Tables are a bit like collections - they store a series of things. You'd use a collection for inventory. You'd use a table for a mini-map, or the state of a tic-tac-toe game. miroki123 (one of our beta testers) used it for his own custom pathfinding system. Deedasmi (one of our moderators) used it for an enemy wave system.

Tables can be a single dimension, that is, much like a collection. There is little benefit to a single dimension table, other than it may perform considerably faster than a collection if you can predict the amount of things you'll have in it. This could be useful for an item bank system with a limited number of entries.

They can also be two dimensions, that is, literally like a Microsoft Excel table. You can make it store things in two-axis, essentially. This could be useful for a tic-tac-toe game or a mini-map.

They can also be three dimensions. Think of a cube of data. This could be used to represent data in a 3D game for specific game elements.


Attaching Effects

Nothing too exciting here - the item/magic system was already using this transparently. However, you can specifically invoke effects that follow characters if you want to set a character on fire, or have a character affected by posion with little green bubbles floating upwards using a nice particle effect.


Actor Spawning

There are two new events: "Create Actor" and "Spawn Actor". The first one will create a brand new character based on an actor template. The second one will clone another existing actor and spawn it somewhere with all the same attributes. These can be invoked by script, rather than having to deal with a Spawn/Timer.


Custom Poses

A feature requested so many times, and it's finally here. The tedious task of creating new body sprites, and switching those back and forth, is no more. You can create as many custom poses as you'd like. Name them anything. Then you can simply turn on a pose and turn it off when it's appropriate, or simply have a pose run for a certain amount of time.


Actor Timers

This is something you don't know you need. There is a new dynamic trigger for actors and actor templates. It's "While / Timer", and it's really worth checking out. It gets triggered whenever a condition is met and/or every specified amount of time. So you can tell an actor to jump every 5 seconds whenever a certain switch is turned on. Or, you could just have something happen every 5 seconds regardless of anything. Or, you could have it flash while a switch is turned on. Or... you can have some script run all the time. This may sound useless still - but think, you no longer need a bunch of timers everywhere, and it can optionally be applied to actor templates which allow it to function for all actors that are built from it.


New Actor Triggers

There's a few other new useful actor triggers:
Loaded: will trigger for each actor that is loaded in a map, and when they are spawned.
Existence Changed: will trigger for each actor that changes existence (either initially existing, spawned through a spawn/timer, through direct scripting, or party addition/removal).
When: will trigger every time a condition is met.
Changed: will trigger every time a specified expression changes.


If you want these now, you can now subscribe without a credit card finally.

Click here to discuss this blog entry.


Coming New Feature: Effect Preview

by Mike on Mon Sep 20, 2010 3:16 pm

Forum-goers recently found out that the most obvious and most requested event "Change Sun Color" would be coming in the 1.8 version of 001. To add to that list of obvious but awesome new features, I've decided to finally bother adding an effect preview button to the effect editor. It took a few hours, but I figure it'll save you all countless.

preview.png
Effect Preview


Subscribers will get this ever so shortly :).

Click here to discuss this blog entry.