[INACTIVE][MECH/FUN] MoveCraft v0.7.1 - Cars, Planes, and Boats made of blocks [1185]

Discussion in 'Inactive/Unsupported Plugins' started by SycoPrime, Jan 18, 2011.

     
  1. Offline

    SycoPrime

    MoveCraft - Cars, Planes, and Boats:
    Version: v0.7.0

    Build a vehicle of any shape and size out of blocks, the same thing you probably already built one out of in Minecraft. With MoveCraft on your server, you can take it for a spin / joy ride!

    MoveCraft was originally developed by Yogoda.
    Then ported to Bukkit and advanced by SycoPrime.
    MoveCraft is now in the hands of Valgor.
    You can find new information on the BukkitDev page.

    WARNING!
    MoveCraft is a fairly demanding plugin, and tends to lag on servers where even a few dozen plugins run fine. If the plugin does not run with an acceptable speed on your server, then that is the way it is, and I suggest not running the plugin.

    Download
    0.7.1 (for CraftBukkit 602-1185)
    Permalink
    Source

    MoveCraft Forums

    Video guide to using craft

    Video guide to installation

    Guide to craft types

    Commands
    Replace "[CraftType]" with the name of the type of craft you are using.
    [command] is specific to each craft type, and defined in its craft type file, and referable in the craft type list.
    • /[CraftType] [command] sail or pilot the craft
    • /[CraftType] release release the craft
    • /[CraftType] remote switch on/off the remote controller
    • /[CraftType] info gives information about the current craft
    • /movecraft types list the types of craft available to you, with size restrictions
    • /movecraft list list all the craft controlled by the players, with size
    Craft can be controlled (piloted and released) by placing signs on them with specific text. The idea of "driving licenses" is that only ops would have the ability to place signs with this text on them, and they could define per-craft usage for specific players or groups by placing these signs.
    Code:
    First line: craft type
    Second line: craft name [optional]
    Third line: craft owner (player or permission group) [optional]
    MoveCraft is the parent node, with all commands such as debug appearing directly under it. All craft are movecraft.craftname, and are checked by individual command. Some example nodes are:
    Code:
    movecraft.aircraft.*
    movecraft.car.*
    movecraft.boat.sail
    movecraft.boat.info
    To add access to all functions of all craft to any user (inadvisable, as only ops should be given full access, and they should have it already) add the following to their permissions node:
    movecraft.*
    To do list:
    • Update drill to support breaking drill blocks
    • RestrictedBlocks
    • Add a check to structureblocks to make sure users haven't added invalid block ids, or something chaos-ensuing like water.
    • Multithreading
    • Warps move with craft
    Known Bugs / Issues:
    • The drill should have a means of ascending.
    • The drill is carrying around water unintentionally
    • The drill, in general, is much buggier than I'd like.
    • Non-cubic craft which have the world in their bounding box upon detection go ahead and take some world with them.
    • Craft can no longer be dynamically built until I can figure out a way to determine if a block was placed in a player interact event.
    • Paintings do not move with craft
    Long-term to-do list, which will be addressed when the above two lists are completely resolved:

    • Automated craft movement using "engine" blocks
    • Waypoints for automated craft
    • Fuel consumption from items in chests, required for certain craft to move
    • Trains
    • Craft which can warp between worlds
    • Hyperspace movement (cover lots of blocks at one time)
    • Craft which can move into unloaded chunks
    • Docking & landing
    • Torpedoes
    • Bricklayers
    • Compatibility with controllerblock
    • Output to signs ("engine 1 is on", "fuel level: 50%" and so forth)
    The easy answer is do this.


    All bug reports will be ignored unless they meet the following conditions:
    1. Craftbukkit version and MoveCraft version must be given. Posts which do not contain this information are obviously not bug reports, and will be treated as idle commentary.
    2. User must test having turned off all other plugins, restarted the server, to verify that the issue is directly with the MoveCraft plugin, and not a conflict with other plugins.
    3. Please copy the output from the server console. If no messages or errors come up, please type "/movecraft debug" in the chat of the game, redo whatever is causing the error, and provide the console output from that.
    I can't fix an error if I can't replicate it.



    The MoveCraft you know and love today would not be possible without contributions (of code) from users like Afforess, Sunkid, and TeamFluff.
    The rest of you need to be more like them.

    Having trouble configuring MoveCraft? Not anymore

    User-created vehicles can be found here

    Server List

    Changelog
    MoveCraft 0.7.1 (for CraftBukkit 818-1185) [on 9/21/2011]
    • Verified working with 1.8.1.
    • Added new blocks from 1.8.1
    MoveCraft 0.7.0 (for CraftBukkit 818-1060) [on 8/18/2011]
    • <Bug> Fixed problem with blocks with data (wool, slabs, etc.) not being properly detected as data blocks.
    • <Bug> Fixed issues with water on craft
    • <Feature> Added SunKid's extensions so that plugins can listen for MoveCraft events.
    • <Feature> Hatches should now work okay
    • If you want hatches on the edges of your craft (nothing below or above them), you'll need to add them to the structureblocks list for that craft type (or the global config if the craft type file doesn't overwrite the setting)
    • Internal file restructuring, mostly for readability
    • Minor optimizations
    • When moving, craft now disassemble from the top down, and reassemble from the bottom up.
      This is probably going to mean slabs once again won't work right, but the tradeoff is less lag in movement.
      I'll try to implement a different fix for that soonish.
    • /crafttype size function removed, as it is part of info
    • /crafttype setname appears to work
    • <Bug> Fixed the issue with doors, potentially other blocks, thanks to TeamFluff
    • Fixed drills not dropping blocks (HungryHungryDrill config setting was accidentally "true" by default, now "false". Users with existing config files will need to manually change them, or recreate)
    • <Bug> Fixed bottom level duplication bug
    • General improvements to rotation
    • <Bug> Fixed chest duplication bug
    MoveCraft 0.6.9 (for CraftBukkit 602-860) [on 6/1/2011]

    • Config file extension changed to XML
    • Config setting "writedefaultcraft" has been removed, but the jar still creates the craft type files automatically (reverted changes made in beta releases)
    • Config setting "HungryHungryDrill" added to allow for drills that simply do not produce blocks. (Accidentally set to default)
    • Changed config setting "ForceTeleport" to "TryNudge" until better success is achieved with Player.setVelocity
    • Fixed cacti
    • Fixed craft not moving through snow
    • Fixed an edge detection issue brought up in 0.6.9 betas
    • fixed the zoolander issue (craft had problems turning left)
    • Added global "forbidden blocks" setting to config files
    • <Bug> Signs placed side by side on walls now resolved
    • <Bug> Double chest issue resolved
    • <Bug> Better handling of moving all entities on craft
    • <Feature> Craft should now ignore item entities onboard while moving.
    • <Bug> Part of the craft now places blocks from top-down instead of bottom-up as a way to partly resolve one of the issues steps were having.
    • <Feature> /<craft name> might work for names without spaces, ones with spaces coming soon
    • <Feature> Added a config setting for "RequiresRemote", where the craft will only move using the item defined as the remote
    • Added a config setting for "LogLevel" as a prelude to debugging with greater depth.
    • <Feature> Several improvements have been made to the rotation code currently implemented.
    • <Bug> Miscellaneous updates to rotation
    • <Bug> Water behind rotated craft works
    • <Feature> Added support for note blocks
    • <Feature> Added the ability to take remote control of a craft you're not already piloting, by pointing at it and typing "/<crafttype> remote"
    • <Feature> Added the ability to remote control craft in general with "/remote" (rather than only "/<crafttype> remote" as before)
    MoveCraft 0.6.8 (for CraftBukkit 602-860) on [4/10/2011]:

    • Altered plugin structure to support Player_Interact in place of older functions (please note, this introduced an error).
    • Craft moves all entities on it (Minecarts, dogs) rather than just players.
    • Attempted to add a means of moving players without teleport, failed.
    • Fixed Furnaces and dispensers not retaining inventory through movement
    • Multi-threading support added (but not stable)
    • Resolution of the "ridiculously long plugin" warning.
    • Namespace resolution as per regulation
    • Support for beds, half-blocks, and other Minecraft Beta 1.3 additions.
    • Fix to prevent crashing in the event of newly added blocks by handling them generically.
    • Signs on Craft now work, though not entirely as intended
    • Craft now sport three different movement options, which are set up per craft type, and not per individual craft of different types. By the default, the first is enabled, the other two are not. Theoretically, all could be enabled, but I wouldn't try it.
      To configure the options, add it to a craft type file in the form of "<name>=true/false", taking <name> from the list below.
      • listenItem: As it has been since being released on bukkit. Put something in your hand and right-click.
      • listenAnimation: Arm swing, theoretically just like hMod MoveCraft.
      • listenMovement: When the pilot moves, the craft moves. Theoretically it works for jumping (up), not sure if it'll work for ducking (down).
    • Two new craft type file settings that may or may not work (untested). Both of these work the same way as "structureBlocks", in that they are a comma-separated list of block IDs.:
      • restrictedBlocks: Structureblocks that are allowed by the default setting, but not counted as structure blocks for this particular craft type.
      • extendedBlocks: Structureblocks other than the default (set by config usually) that this block can use.
    • Two new config file settings:
      • ForceTeleport (boolean): Uses the old player teleportation on craft move style. Defaults to false.
      • ExperimentalMovementMultiplier (double): Multiplies the player "nudge" by this amount. Note that the current formula is (current craft speed * change in direction * this value). Defaults to 1.0.
    • Rudimentary rotation support.
    • Several small, undocumented fixes and changes that have unfortunately vanished from my memory.
    MoveCraft 0.6.7 (for CraftBukkit 531-460) on [2/27/11]:

    • <Feature> Nijikokun's Permissions Plugin is now supported
    • <Optimization> Revamped the way config files are handled internally to the plugin
    • <Feature> Added a global config setting for structureblocks.
    • <Feature> Added a config setting for universal remoteitemid
    • <Feature> Added a craft file setting for remoteitemid
    • <Optimization> Added a check to see if the chunk the craft is going to move into is loaded
    • <Feature> Chests, dispensers, and furnaces now retain items during movement
    • <Fix> Changed the way flyblocks are handled, so that all craft should be able to require these blocks in order to be created, only if the craft file is written to do so.
    • <Bug> Fixed a bug with WriteDefaultCraft=true, but I am heavily considering just releasing the craft files with the plugin in future updates, rather than having them be created by the plugin. I welcome commentary on this decision.
    • <Fix> Yogoda fixed craft detection so that submarines and craft with water in them work better.
    Changes in version 0.6.6 "Oprah":

    • <Bug> Fixed inability to have multiple craft.
    • <Bug> Made vehicles plow through things on grass instead of everything that requires support.
    • <Bug> Fixed different cloth colors and log colors.
    • <Feature> Added config file
    • <Feature> Added a config setting "RequireOp" that requires users to be ops in order to work craft.
    • <Feature> Added a config setting "WriteDefaultCraft", which allows you turn off the generation of default craft files.
    • <Feature> Added config setting "CraftReleaseDelay" to configure the delay between when the craft is exited and when it is automatically released. Use "0" to disable automatic release.
    Changes in version 0.6.5:

    • <Bug> Fixed controlling vehicles with signs, sign coloring is currently not working.
    • <Feature> Added a timer when exiting the vehicle that releases the vehicle if you do not get back on or /<vehicle> remote within 15 seconds.
    • <Support> Generic forward compatibility for would-be-added blocks.
    • <Bug> Cleaned up more console spam.
    • <Bug> Fixed submarine digging exploit (probably)
    • <Bug> Tweaked the drill. It's still not finished.
    Changes in version 0.6.4:

    • <Feature> Yogoda fixed the drill. It now works as it should, including dropping items. The last thing left to do is figure out a way to make it go back up.
    • <Bug> Fixed doors on craft.
    • <Bug> Fixed errors in console.
    • Fixed issues I was having with git commits. Repository should reflect properly now.
    Changes in version 0.6.3:


    Negligible.

    Changes in version 0.6.2:
    • <Bug> Fixed signs.
    • <Bug> Broke the drill (incomplete).
    • <:D> Drill might also spew diamonds, make it rain!
    MoveCraft 0.6.1:

    • Right-click to move the craft.
    • Tools are now allowed to be in hand while moving the craft.
    • Implemented the drill (incomplete).

    This post has been edited 11 times. It was last edited by SycoPrime Nov 9, 2011.
  2.  
  3. Offline

    SycoPrime

    Oh crap. Shouldn't have left that in. Yeah, that doesn't work at all.
  4. Offline

    LucidLethargy

    Haha aw, shoot :p

    Cars are a lot of fun at any rate - I've been testing them with others on my server and they are a blast! Thanks for keeping things fresh!
    --- merged: Feb 8, 2011 3:59 AM ---
    I am almost certain MoveCraft is causing errors with 271 - just a heads up.
    I'm sorry to say I can't seem to find the error messages again, but I am confident they would be reproduced in a second if you tried to run this on any server with the very latest build.
  5. Offline

    skyeyemachine

  6. Offline

    SycoPrime

    I have been running with the latest build, and have not encountered any errors.
    Could you turn off all other plugins and check if it's a comparability problem?
  7. Offline

    Brack

    Hey Syco,

    Just installed this plugin today and its working well (289). I really like my yellow submarine alot more now :p.

    Have you considered automation of vehicles? Creating trains or zeppelins that transport people around the map automatically would be amazing. Possibly moving sidewalks and more. I don't know if any of this is currently possible, or something you'd even want to undertake.

    Anyway, thanks for the work.
  8. Offline

    Skyve

    One little question - how did you design the retractable column? Is it a separate craft bordered with non-craft blocks (so it wouldn't get stuck) inside the main ship?
  9. Offline

    SycoPrime

    Glad you're enjoying the mod! Yes, I have been working on automated craft.
    There are still some bugs to work out.
    How they would find a pre-determined path is kind of an issue. Also, I'm concerned about what happens when half a craft flies into an unloaded chunk, and not really sure how to resolve that.
  10. Offline

    LucidLethargy


    Your absolutely correct, it does seem to work fine now - sorry about the false alarm!
    It must have been build 171 at the time doing something wonky, or perhaps a plugin I missed. Works fine now!
  11. Offline

    alexgeek

    I accidentally attached my house to the craft, it was by stone though which i though was supposed to stop the detection.
    All my the items in my chest came out but the chests were still there, activating chests causes client crash :/
  12. Offline

    SycoPrime

    Stone is not allowed as a structure block, but is allowed as an interior block. It is possible that the detection algorithm thought your house was part of the craft. I apologize for the inconvenience, but it is best not to build craft directly attached to anything.
    Yes, chests are currently broken. This is a known bukkit bug. The chest will cease to be broken when the chunk is saved to the server, or so I understand.
  13. Offline

    skyeyemachine

    Actually, yes, it is. What I did was create a special type of craft for the column that, among other things, ignores cobblestone blocks. The column then retracts upwards into a cobblestone-lined vertical chamber with holes for all the doors you see in the sides, so that it's a functional part of the craft when it's back in place. The key though is that the fortress itself does recognise cobblestone, so that when the column is retracted, it is seen as part of the structure and carried along during movement. The mobile drill and the scout craft were built in the same way.

    I could post a picture of the storage shaft in that thread if you'd like to see how it's put together. I don't want to hijack SycoPrime's dev thread. :)
  14. Offline

    SycoPrime

    Even if illiterates hadn't sufficiently flooded this thread with inanities, I would still be perfectly open to people showing off their creations, so long as individuals show moderation in the amount of images they post.

    I actually prefer to hear about, and at times see what people do, generally in Minecraft as a whole, but I do have a special interest in MoveCraft, of course. I hadn't thought to try variations in the manner you suggested, and will be sure to play around with it later tonight. Hearing what people do and try to do helps me understand better what the mod is capable of, and what it could be capable of.
  15. 2 things dispenser dont attach... i was trying to make a tank
    also my drill dosent work
  16. Offline

    SycoPrime

    I have already experimented on and given up on this idea, but maybe someone can help make it useful:
    I figured that since other entities could nudge players, it would be possible to spawn any entity, say a sheep or a chicken, and then teleport them in a location relative to the player in order to shift the player.
    However, there were several issues:
    1) Entities take a second to spawn, so rather than being created as needed, one would need to be created for everyone on a craft, and somehow kept in the same chunk, or close enough to not be unloaded.
    2) Entities tend to move around of their own accord...
    3) Entities would have to be teleported from a relative position, requiring two quick teleports for each player movement.
  17. Offline

    Skyve

    Suggestion: it seems that there is no list of block ids that define a "default" craft that all other craft inherit from (looks like such list is hardcoded and only overwritten by specific craft configs in which the following line is present
    Code:
    structureBlocks=...etc
    ).

    So if a user would like to change all craft types to, for example, not treat netherstone as structure block, the only solution would be to put a structureBlocks line not containing the netherstone id in every craft definition file. It would be much easier if there was a default block list in movecraft.config.

    If this is outright difficult, could the nether blocks (netherrack, glowstone, soul sand) by default be removed from structure blocks (unless specifically declared in craft files).

    This suggestion is sponsored by NetherWorld Exploration Corps.
  18. Offline

    Yogoda

    As the netherrack is used a lot to make craft, we could make it so if world = normal, it is included, and if world = nether it is not :

    if(player.getWorld().getEnvironment == Environment.NORMAL)
    ...
    else if(player.getWorld().getEnvironment == Environment.NETHER)
    ...
  19. Offline

    SycoPrime

    Well, I was planning on making revisions to how structure blocks work anyway. There's no reason why the default set couldn't be loaded, if present, from the config file.
  20. Offline

    Skyve

    Bug report: Stone Slab blocks (and doubles) -- ID 43, 44 -- sometimes disappear when a craft containing them moves. The easiest way to reproduce is to make the floor out of half blocks.
  21. Offline

    Joachim

    Hi peoples!
    How can i change the block limit for ships, boats, etc.?
    //Jolle
  22. Offline

    SycoPrime

    In the text files.
    They can be located at plugins/movecraft/*.txt
    There's a line for maxblocks.
  23. Offline

    Skyve

    Go to plugins/movecraft folder. You will find the definition files for all craft types. You can edit them or add more types based on these.


    Also, I got a great new idea for the ToDo list: since Bukkit has implemented multi-world support, a logical step would be to add some kind of a warp drive vehicle (maybe call it "spaceship"?) that is able to teleport to another worlds loaded on the server. It should use some expensive blocks as the warp core, of course (configurable).

    The idea may require some witty coding.
    The problems with this would be:
    • Controlling which world (if multiple) will it teleport into. Perhaps there would be a need for a separate control panel (sign) where you specify the destinations.
    • Detecting whether you will hit terrain once the craft teleports. If it's possible to check what blocks are there without loading the world for the client first, this would be easier. Or you could make a totally unsafe craft (there have to be some downsides to warp travel, right?) that replaces terrain or even explodes if it hits any blocks on teleport. Or it could be random.
    • Deciding whether the worlds are linked at 1:1 scale or work like nether in singleplayer (distances in the real world are greater than in nether world). Perhaps Bukkit has the means to set scale for worlds? Or the plugins have to handle that.
  24. Offline

    LightKing

    I already installed the plugin and everything is smooth, and I already built my airship, and theres enough wool and when I right click my sign, it says Welcome to XXX, Right click in the direction you want to go. But when I right Click, nothing moves? Halp meh
  25. Offline

    SycoPrime

    You need to equip a tool, or a block. I suggest a shovel.

    I tried to look into it. I got it to happen once, but I couldn't replicate it. This makes it difficult to debug :/

    Hyperdrive already exists. It is a means of moving 16x in any direction. When it is officially released, it will cost a great deal of fuel.
    However, I do like the idea of being able to travel between worlds with a warp drive. I remember it being possible to list all available worlds, and if desired, I could make it so that ops can go into new / unloaded worlds.
    There is nothing in the code to imply scale, and I'll just keep "hyperspace" for traveling x16 blocks.
    Like hyperspace, I have no intention to bother checking if the craft can move to the target. First: because what do you do if it can't? Second: Because it would be an added risk of using the device. And third, most importantly: Because if the chunk isn't loaded, the app is blind to it.
  26. Offline

    Ugarte

    Glad to see Movecraft will be available on Bukkit. I had just set it up on my hMod server and sold vehicle licenses to players for varying vehicle types, sizes, and speeds, and shortly thereafter we switched to Bukkit. I'll wait for Permissions support before activating it on the Bukkit server, so that a similar approach can be made.
  27. Offline

    Kelroth

    it's not working on mine
    i'm getting this
    ....

    2011-02-13 11:54:45 [INFO] Preparing spawn area: 77%
    Feb 13, 2011 11:54:46 AM org.bukkit.plugin.SimplePluginManager loadPlugins
    SEVERE: Could not load plugins/MoveCraft.jar in plugins: null
    org.bukkit.plugin.InvalidPluginException
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:56)
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:117)
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:82)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:43)
    at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:156)
    at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:143)
    at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:104)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:186)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:512)
    Caused by: java.io.FileNotFoundException: Jar does not contain plugin.yml
    ... 9 more
    2011-02-13 11:54:46 [INFO] [Permissions] version [2.0] (Handler) loaded
    ....

    fixes?
  28. Offline

    mortdefaim

    Hi this mod is the better mod i have tested on my server!!

    I have a few questions :

    In the future, does the movement will look more realistics (i don't know how to say that in english but i think you will understand)?

    Will the vehicles be able to rotate?

    Anyway thanks for your job this is awesome ;)
  29. Offline

    SycoPrime

    Re-download the jar. I just checked the online copy, and the jar definitely does contain the file plugin.yml. If yours does not, the download is corrupted.

    Due to limitations in minecraft server technology, probably not. It would be possible in singleplayer, but looks like it won't be possible in multiplayer.

    Eventually, yes.
  30. Offline

    mortdefaim

    In your todo list you have permissions, i want to say that it works fine on my serveur using : movecraft.[craft]
  31. Offline

    TankFox

    So this is what it's like to own a houseboat that can fly. It feels so good to build and improve my craft, then fly it from place to place. Passenger support is excellent, I can load my friends into my ship and we can all travel together! I can't thank you enough!

    This mod is a perfect companion to spells+wands and the Planetoids map generator. I work my way to a wood planet, build an aircraft, then fly from planet to planet collecting reagents for my wand. It's like being an asteroid miner!
  32. Offline

    Arisilde

    This :D please implement permissions support. I know you want to hold out until they release the official system, but that doesn't look like it's going to be in the forseeable future. Throw us a bone lol. A permissions node per vehicle type can't be that hard to code. I know people who have added permissions into other plugins that have a whole slew of features in one day :/ I think there's a pretty substantial list of people who would really appreciate you for it.

Share This Page