ago

Members
  • Content count

    2680
  • Joined

  • Last visited

Community Reputation

362 Excellent

4 Followers

About ago

  • Rank
    Villager

Profile Information

  • Gender
    Not Telling
  1. Thanks joedobo https://github.com/ago1024/WurmServerModLauncher/releases/tag/v0.29.2 Version 0.29.2 modloader Fix missing heightOffset parameter in ActionPerformerBehaviour (joedobo)
  2. The post essentially shows that even minimal programming requirements are a real show stopper. So what would be an easy to use option to describe the item properties and recipes for the server? XML, JSON, anything else?
  3. The Javascript files are pure text an can be written and edited in Notepad++ or any other text editor that saves them as plain text. The .class files are compiled Java files and are not relevant when using JavaScript with the scriptrunner mod. See https://www.dropbox.com/s/0699z5a4oe61zgq/curtains.zip?dl=0 for the complete mod structure. The graphics assets go into curtainspack.jar which must be structured like a regular graphics pack. The example above is minimal setup for items without any custom behaviour. As soon as you want to have the items behave differently (for example opening and closing curtains) you'd have to start programming.
  4. https://github.com/ago1024/WurmClientModLauncher/releases/tag/v0.6 Version 0.6 modsupport textures referenced in armor.xml in a pack are resolved from that pack This means a serverpack can have an armor.xml which sets different textures like a custom tabard. See https://www.dropbox.com/s/bnn7r5lzsibnon8/armortest.zip?dl=0 for an example which replaces the default (i.e. freedom) tabard with a custom (actually HotS) tabard .
  5. Updated the post above with the scripts.
  6. The option with the least amount of programming needed should be the scriptrunner. I can probably put together a simple example tomorrow. The recipe is essentially: * Create a curtains.properties file with classname=org.gotti.wurmunlimited.modloader.SimpleMod depend.requires=scriptrunner,serverpacks serverPacks=curtainspack.jar * Save the pack with the curtains as curtains\curtainspack.jar * Create a script for the template in curtains\scripts\onItemTemplatesCreated\template.js var ItemTemplateBuilder = Packages.org.gotti.wurmunlimited.modsupport.ItemTemplateBuilder; var ItemTypes = Packages.com.wurmonline.server.items.ItemTypes; var logger = Packages.java.util.logging.Logger.getLogger("curtains"); function onItemTemplatesCreated() { var builder = new ItemTemplateBuilder("yourname.curtain.blue"); builder.name("blue curtain", "blue curtains", "A nice blue curtain"); builder.descriptions("excellent", "good", "ok", "poor"); builder.itemTypes([ ItemTypes.ITEM_TYPE_CLOTH, ItemTypes.ITEM_TYPE_NOTAKE, ItemTypes.ITEM_TYPE_REPAIRABLE, ItemTypes.ITEM_TYPE_TURNABLE, ItemTypes.ITEM_TYPE_DECORATION, ItemTypes.ITEM_TYPE_DESTROYABLE, ItemTypes.ITEM_TYPE_ONE_PER_TILE, ItemTypes.ITEM_TYPE_IMPROVEITEM, ItemTypes.ITEM_TYPE_OWNER_DESTROYABLE, ItemTypes.ITEM_TYPE_OWNER_TURNABLE, ItemTypes.ITEM_TYPE_OWNER_MOVEABLE, ItemTypes.ITEM_TYPE_NONUTRITION, ItemTypes.ITEM_TYPE_PLANTABLE, ]); builder.imageNumber(640); builder.behaviourType(1); builder.combatDamage(0); builder.decayTime(9072000); builder.dimensions(5, 5, 205); builder.primarySkill(-10); builder.bodySpaces(Packages.com.wurmonline.server.MiscConstants.EMPTY_BYTE_PRIMITIVE_ARRAY); builder.modelName("model.decoration.curtains."); builder.difficulty(30.0); builder.weightGrams(2500); builder.material(14); builder.isTraded(true); var template = builder.build(); logger.info("Created item template " + template.getTemplateId() + " for blue curtain"); } * Add a script for the creation recipe in curtains\scripts\onServerStarted\recipe.js var IdFactory = Packages.org.gotti.wurmunlimited.modsupport.IdFactory; var IdType = Packages.org.gotti.wurmunlimited.modsupport.IdType; var CreationCategories = Packages.com.wurmonline.server.items.CreationCategories; var ItemList = Packages.com.wurmonline.server.items.ItemList; var SkillList = Packages.com.wurmonline.server.skills.SkillList; var CreationEntryCreator = Packages.com.wurmonline.server.items.CreationEntryCreator; var logger = Packages.java.util.logging.Logger.getLogger("curtains"); function onServerStarted() { var itemId = IdFactory.getIdFor("yourname.curtain.blue", IdType.ITEMTEMPLATE); CreationEntryCreator.createSimpleEntry(SkillList.CARPENTRY, ItemList.clothYard, ItemList.shaft, itemId, true, true, 0.0, false, false, CreationCategories.DECORATION); logger.info("Created creation entry for blue curtain"); }
  7. can you please post your server.log in spoilers or upload it on pastebin or a similar site?
  8. From the preview on your photobucket library I can deduct it's a problem with the NPC code trying to perform a random action where none is available. Afaik this one does not do any harm and can be ignored.
  9. Neither image is working. You've essentially copied the a dropbox link that's only working for you
  10. I have no idea why this is happening to you. The patcher is pretty simple and should at least print some messages on the console about the patching process.
  11. logging.properties should not be in mods. Did you extract the modloader to the mods folder? The modloader (including logging.properties) should be in the root of the game
  12. https://github.com/ago1024/WurmServerModLauncher/wiki/Custom-maps
  13. Do you use java code or the script runner? The actions in actiondemo receive valid values for tile.
  14. I've currently no idea. The call path looks fine. I'll have to debug where the value is coming from.
  15. https://github.com/ago1024/WurmServerModLauncher/releases/tag/v0.29.1 Version 0.29.1 modloader Fix incorrect double use of tileY in new actions and replace it with tileX