Uploaded image for project: 'Minecraft API'
  1. Minecraft API
  2. MCAPI-365

Incremental API, faster and better feedback before API freeze.

    XMLWordPrintable

    Details

      Description

      Minecraft API was announced long ago, it's time to release something out there. Don't worry if it isn't complete, name it 0.0.1 and start rolling.

      Think it like composition of mathematical functions. Just with small things we can achieve enormous ones.

      Until API freeze on version 1.0 you can add, test and get valuable feedback if you give modders just a bit to play with. Bigger things will come after. Get the modders to feel you listen to them and they will be impatient of things to do for you.

      Consider that a new API requires modders some time to learn, waiting too much will make you lose a hole lot of them because of laziness.

      You are the game creators, you are the ones with the easiest job. Bukkit guys had to decompile and figure out how the server worked, don't wait too much. Please.

      • * * * * * * * * *
      • PATH TO GLORY

      1. Block API.

      Blocks are the simplest unit on Minecraft and you have stated you don't want to mess up things with chunks. Okay. Fine.

      Provide a very basic block API. You load a world by its folder name, you can switch between dimensions on it, you can change blocks around.

      NO EVENTS YET. Imagine Blender (simpler) via Java, get that part easy for modders and they will thank you forever. Listen for feedback, tweak docs.

      2. Player API.

      You can change blocks around, now let the modders change things about players. Their name, name on Tab-list, name on screen, coloring, XP. Get their position, useless because we have no events yet but useful in a NEAR future.

      STILL NO EVENTS YET. Don't mess with items or inventories yet. Listen for feedback, tweak docs.

      3. Events API.

      (First big milestone)

      Things to modify and people modifying those. We want to modify how both of them interact with each other. Events for Block and Player related things.

      Examples:

      • PlayerMove
      • PlayerJoin
      • PlayerQuit
      • PlayerDeath
      • PlayerXpChange
      • BlockHit
      • BlockBreak
      • BlockIgnite
      • BlockSpawn/Place
      • BlockDespawn/Die?/Remove
      • etc...

      Most of this won't work because Items aren't yet there but you get the modders to take a look of what's coming, they can't test out how things will work. Listen for feedback, tweak events, tweak docs.

      4. Chat API.

      We didn't get to talk with players yet, how about fixing that? More events. Reuse Player name colors, yay!

      5. Item API.

      (Second big milestone)

      Everything but blocks and living things are items of some sort. Provide a simple API to spawn them and prototype how their events will be. Modders again get to see what's coming and can play around with it.

      Listen for feedback, tweak APIs, tweak events, tweak docs.

      6. LivingEntities API.

      Living Things/Monsters/NPCs/you name it. Same things as BULLET#2 but with animals, monsters, npcs... Get their position, set their name, simple things.

      Listen for feedback, tweak APIs, tweak events, tweak docs.

      7. Keep going...

      Permissions API, Inventories API, Dyes API (change color/material of blocks, items and living things), Blocks API (add custom blocks), Items API (add custom items, add custom enchantments), Vehicles API, Mobs API, IA API, Redstone API, etc...

      You get to choose what's next.

      REMEMBER: LISTEN FOR FEEDBACK, TWEAK APIS, TWEAK EVENTS, TWEAK DOCS.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              toqueteos Carlos Cobo
            • Votes:
              3 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: