Giter Club home page Giter Club logo

brawlator's People

Contributors

hbeau avatar

Stargazers

 avatar

Watchers

 avatar

brawlator's Issues

[Request] Definable equipment

Add the ability to define equipment within the mob config.
Example

    {
        damage=1.0
        hp=5.0
        knockbackResistance=1
        name="Humanity leftover"
        speed=1.0
        type=zombie
        equipment={
          head: {ref : "ItemizerHelm"}
          mainhand: {pool_ref : 1}
          legs: {name: "minecraft:leather_leggings"}
          
        }
    }

[ENHANCEMENT] Scripting system for mobs

Objective:

implement a scripting system similar to CustomNPCs.

Purpose:
Brawlator is the first custom mobs plugin for sponge that i am aware of; adding CustomNPC-like features could possible draw many folks over to the Sponge community helping to draw new devs to further improve Sponge.

Example of CustomNPC scripting API
http://www.kodevelopment.nl/minecraft/customnpcs/scripting

Key events:
the first events the team should focus on implementing are:

damaged()
died()
attack()
tick()
timer()

this should provide most of the functionality i think most people desire in a mob scripting system.
Eventually we should find a way to implement ranged attacks and melee attacks on the same mob; then split attack() into meleeAttack() and rangedAttack()

Two other very useful features would be:
target()
targetLost()

This would help in the creation of Finite State Machines and the first step into custom AI for Brawlator.

Additional notes:
CustomNPCs has a Javascript engine spawned for each NPC. this allows you to use the same code without interfering with any global effects; I think Brawlator should follow suit for the same reason.

As such if we needed to pass events between scripting engines; two functions would be needed setTempData() and getTempData()

[Request] Replace Vanilla Mob spawns with Brawlator spawns

When enabled default (and modded) mob spawns will be replaced with Brawlator mobs identified by the Brawlator name variable from monsters.conf

mobOverride=[
     minecraft:creeper="Megaboomer"
     minecraft:skeleton="Tank Archer"
     minecraft:zombie="Humanity Leftover"
     minecraft:pig="Mister Pig"
     mocreatures:rabbit="Holy Grail"
]

[Request] Add Sponge Economy API support

I will be first to admit i have never written a line of Java in my life!

But i believe this captures the idea of what i mean, and how it works.

// sponge things
import "org.spongepowered.api.Sponge";
import "org.spongepowered.api.service.economy.EconomyService";
// java things
import "java.util.UUID";
import "java.math.BigDecimal";

var uuid = //whatever the uuid of player whoever killed it
var value = //value pulled from monsters.conf

public class spongeEconomyDeposit(uuid,value){
    var account = org.spongepowered.api.service.economy.EconomyService.getOrCreateAccount(UUID.fromString(uuid)) //gets Economy Account for the Player.
    var value = java.util.UUID(value) //value in () is value to be deposited.
    var currency = org.spongepowered.api.service.economy.EconomyService.getDefaultCurrency() //gets DefaultCurrency of the Economy Plugin
    var cause = org.spongepowered.api.Sponge.getCauseStackManager().getCurrentCause() //gets the Cause Manager from Sponge

        account.get().deposit(currency,value,cause) //deposit amount of value into players account.
}

https://docs.spongepowered.org/stable/en/plugin/economy/index.html

Allow natural spawn override for all biomes

Natural spawn override should work when no biome is specified. It would then override the spawn for all biomes, but biome specific overrides would keep priorities over it.
config-wise, we could simply act that no biome = all biome
(related to #7)

[BUG] Natural Spawn does not function

Plugin Version: 1.2
Sponge Version: Vanilla 7.2.3 (stable)
Forge Version (as applicable): N/A
Last known working version: 0.2 (previous release)

Problem Description:
Natural Spawn setting no longer functions

Steps to Recreate:
Enable natural spawn set the time to night and wait for mobs to spawn, only vanilla mobs will spawn; not Brawlator ones

[REQUEST] Debug mode logging toggle

Currently in Brawlator there is a constant stream of very useful information when developing; however it floods the logs and makes troubleshooting other plugins more difficult.

Can an option be added that enables/disables this logging into the global config?

[REQUEST] Effects support for mobs

This would allow for Mobs to spawn with effects on them, the ability to inflict effects on attack (with configurable percentage), and apply an effect to the player within a certain radius.

This would be similar to how Diablo/Binding of Isaak functions with their "Champions" Also how the mod "Infernal Mobs" functions.

[Request] Itemizer integration and item drops

Add itemizer item and pool support.
the example config below will always drop the item "Bronze Dagger" and the minecraft item "bone" as well as roll both item pools and drop both items (if any) that are returned.

monsters=[
    {
        damage=1.0
        hp=50.0
        knockbackResistance=1
        name="Tank archer"
        speed=1.0
        type=skeleton
        drops: [
            item: {name: "minecraft:bone"},
            item: {ref: "Bronze Dagger"}, //will always drop itemizer item "Bronze Dagger"
            pool: {ref: 1}, //will always look into Itemizer Pool and return value
            pool: {ref: 21} //will always look into Itemizer Pool and return value
        ]
    }
]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.