Giter Site home page Giter Site logo

elifoster / chaotickarma Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 61 KB

:four_leaf_clover: A Minecraft mod that implements positive and negative karma, and corresponding random events.

Home Page: https://modrinth.com/mod/chaotickarma

Java 100.00%
minecraft-mod

chaotickarma's People

Contributors

elifoster avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

searge-dp

chaotickarma's Issues

TODO

  • Implement general karma system and API
  • API
    • Adding karma (negative integers for removing it)
    • Adding a karma event
    • KarmaEventPositive
    • KarmaEventNegative
    • Adding a karma perk
    • KarmaPerkPositive
    • KarmaPerkNegative

Obtaining karma

Karma can be obtained through doing good in the world, or evil. Negative karma subtracts the player's total karma, while positive does the opposite. Positive karma displays a heart animation like you were being bred, while negative displays the same but with black hearts.

  • Positive karma givers:
    • Kill angry mobs
    • Kill boss
    • Break mob spawner
    • Kill charged creeper
    • Tame animal
    • Plant sapling (similar situation to building golems)
    • Kill player with negative karma.
  • Negative karma givers
    • Kill villager
    • Kill golems
    • Kill animals
    • Break sapling
    • Kill player
    • Kill player with positive karma (worse than above)

Karma Events

Karma events occur randomly, and only when the player has a certain amount of karma, dependent on the event. A sound, should be played when the player gets an event.

  • Positive karma events
    • Spawn valuable resources in the player's inventory
    • Give player a bunch of experience. Enough to get from level 0 to level 10-15.
    • Chest with dungeon loot spawns by player
  • Negative karma events
    • Strike player with lightning
    • Spawn mob herd on player
    • If they are near lava (in nether, low Y level) set them on fire

Karma Perks

Negative karma can bring a few positive perks in exchange for all the negative events. Meanwhile, positive karma can bring a few negative perks in exchange for all the positive events. These are passive effects applied to the player.

  • Negative karma perks (positive perks)
    • Tiered mob ignorance:
      • Certain levels of negative karma make certain mobs ignore you.
      • Low: Spiders and such
      • Mid: Zombies and skeletons
      • High: Creepers and baby zombies
      • Max: Endermen
  • Positive karma perks (negative perks)
    • Twice as much bone meal used before it works

Utility

There are some, primarily intended for servers, utilities. This includes the following commands:

  • /karmaset <player> <amount> Sets the player's karma to the given value.
  • /karmaget <player> Says the player's karma in chat.

TODO after initial release

  • Trading with villagers give karma
  • Building golems gives karma
  • Fishing takes karma
  • Ore drops some additional resources positive karma event
  • Create explosion when mining an ore negative karma event
  • If a player is climbing, break a chunk of the climbing blocks negative karma event
  • Rotten flesh no longer causes hunger negative karma perk (undecided)

Some of these things will require ASM or something similar, as well as more decision-making and stuff.

Crash with version:1.0.0 [IllegalArgumentException]

Hello,
I have a crash with your mod. In the following the crash report with my modded version. I've tested it without mods (only with Forge and Lite Loader), but the same error occurs.

Greetings
LuminousLizard

---- Minecraft Crash Report ----
// I'm sorry, Dave.

Time: 22.12.15 18:04
Description: Initializing game

java.lang.IllegalArgumentException: The karma chance must be greater than 0
    at santa.karma.api.event.KarmaEvent.setKarmaChance(KarmaEvent.java:44)
    at santa.karma.events.negative.LightningStrike.<init>(LightningStrike.java:11)
    at santa.karma.ChaoticKarma.registerNegativeDefaultEvents(ChaoticKarma.java:56)
    at santa.karma.ChaoticKarma.init(ChaoticKarma.java:36)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532)
    at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
    at com.google.common.eventbus.EventBus.post(EventBus.java:275)
    at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212)
    at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
    at com.google.common.eventbus.EventBus.post(EventBus.java:275)
    at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:737)
    at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:311)
    at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:552)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:878)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
    at santa.karma.api.event.KarmaEvent.setKarmaChance(KarmaEvent.java:44)
    at santa.karma.events.negative.LightningStrike.<init>(LightningStrike.java:11)
    at santa.karma.ChaoticKarma.registerNegativeDefaultEvents(ChaoticKarma.java:56)
    at santa.karma.ChaoticKarma.init(ChaoticKarma.java:36)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532)
    at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
    at com.google.common.eventbus.EventBus.post(EventBus.java:275)
    at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212)
    at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
    at com.google.common.eventbus.EventBus.post(EventBus.java:275)
    at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119)
    at cpw.mods.fml.common.Loader.initializeMods(Loader.java:737)
    at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:311)
    at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:552)

-- Initialization --
Details:
Stacktrace:
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:878)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

-- System Details --
Details:
    Minecraft Version: 1.7.10
    Operating System: Windows 7 (amd64) version 6.1
    Java Version: 1.8.0_60, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 31200040 bytes (29 MB) / 509890560 bytes (486 MB) up to 2608070656 bytes (2487 MB)
    JVM Flags: 6 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx2500M -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
    AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1558 Optifine OptiFine_1.7.10_HD_C1 62 mods loaded, 62 mods active
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    UCHI    mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) 
    UCHI    FML{7.10.99.99} [Forge Mod Loader] (forge-1.7.10-10.13.4.1558-1.7.10.jar) 
    UCHI    Forge{10.13.4.1558} [Minecraft Forge] (forge-1.7.10-10.13.4.1558-1.7.10.jar) 
    UCHI    CodeChickenCore{1.0.7.47} [CodeChicken Core] (minecraft.jar) 
    UCHI    NotEnoughItems{1.0.5.118} [Not Enough Items] (NotEnoughItems-1.7.10-1.0.5.118-universal.jar) 
    UCHI    <CoFH ASM>{000} [CoFH ASM] (minecraft.jar) 
    UCHI    CoFHCore{1.7.10R3.0.3} [CoFH Core] (CoFHCore-[1.7.10]3.0.3-303.jar) 
    UCHI    BuildCraft|Core{7.1.14} [BuildCraft] (buildcraft-7.1.14.jar) 
    UCHI    BuildCraft|Transport{7.1.14} [BC Transport] (buildcraft-7.1.14.jar) 
    UCHI    BuildCraft|Silicon{7.1.14} [BC Silicon] (buildcraft-7.1.14.jar) 
    UCHI    BuildCraft|Factory{7.1.14} [BC Factory] (buildcraft-7.1.14.jar) 
    UCHI    additionalpipes{4.7.0} [Additional Pipes] (additionalpipes-4.7.0.jar) 
    UCHI    animalsPlus{1.2} [Animals+] (animalsPlus-1.2.jar) 
    UCHI    asielib{0.4.5} [asielib] (AsieLib-1.7.10-0.4.5.jar) 
    UCHI    ATG{0.10.0} [Alternate Terrain Generation] (ATG-1.7.10-0.12.0.jar) 
    UCHI    BuildCraft|Builders{7.1.14} [BC Builders] (buildcraft-7.1.14.jar) 
    UCHI    BuildCraft|Energy{7.1.14} [BC Energy] (buildcraft-7.1.14.jar) 
    UCHI    BuildCraft|Robotics{7.1.14} [BC Robotics] (buildcraft-7.1.14.jar) 
    UCHI    IC2{2.2.810-experimental} [IndustrialCraft 2] (industrialcraft-2-2.2.810-experimental.jar) 
    UCHI    Forestry{4.2.2.50} [Forestry for Minecraft] (forestry_1.7.10-4.2.2.50.jar) 
    UCHI    BuildCraft|Compat{7.1.3} [BuildCraft Compat] (buildcraft-compat-7.1.3.jar) 
    UCHI    CarpentersBlocks{3.3.7} [Carpenter's Blocks] (Carpenter's Blocks v3.3.7 - MC 1.7.10.jar) 
    UCHI    ComputerCraft{1.75} [ComputerCraft] (ComputerCraft1.75.jar) 
    UCHI    CCLights2{0.4.3} [CCLights 2] (CCLights2-1.7.10-0.4.3.jar) 
    UCHE    chaotickarma{1.0.0} [ChaoticKarma] (ChaoticKarma-1.7.10-1.0.0.jar) 
    UCHI    ChickenChunks{1.3.4.19} [ChickenChunks] (ChickenChunks-1.7.10-1.3.4.19-universal.jar) 
    UCHI    ForgeMultipart{1.2.0.345} [Forge Multipart] (ForgeMultipart-1.7.10-1.2.0.345-universal.jar) 
    UCHI    chisel{2.5.1.44} [Chisel 2] (Chisel2-2.5.1.44.jar) 
    UCHI    MrTJPCoreMod{1.1.0.31} [MrTJPCore] (MrTJPCore-1.1.0.31-universal.jar) 
    UCHI    ProjRed|Core{4.7.0pre9.92} [ProjectRed Core] (ProjectRed-1.7.10-4.7.0pre9.92-Base.jar) 
    UCHI    Waila{1.5.10} [Waila] (Waila-1.5.10_1.7.10.jar) 
    UCHI    computronics{1.6.0} [Computronics] (Computronics-1.7.10-1.6.0.jar) 
    UCHI    Eln{50} [Electrical Age] (ElectricalAge_BETA-1.10_r50.jar) 
    UCHI    FirePeripherals{1.0} [Fire Peripherals] (fireperipherals-1.0.jar) 
    UCHI    IC2BackpackHUD{3.0} [IC2 Backpack HUD] (IC2 Backpack HUD v3.0 - MC 1.7.10.zip) 
    UCHI    IC2NuclearControl{2.3.3a-Exist} [Nuclear Control 2] (IC2NuclearControl-2.3.3a-Exist.jar) 
    UCHI    InventoryPets{1.3.8} [Inventory Pets] (inventorypets-1.7.10-1.3.8-universal.jar) 
    UCHI    Mantle{1.7.10-0.3.2.jenkins191} [Mantle] (Mantle-1.7.10-0.3.2b.jar) 
    UCHI    minechem{5.0.5.406} [Minechem] (Minechem-1.7.10-5.0.5.406.jar) 
    UCHI    OCS{1.7.5} [OpenCCSensors] (openccsensors-1.7.5.jar) 
    UCHI    harvestcraft{1.7.10j} [Pam's HarvestCraft] (Pam's HarvestCraft 1.7.10Lb.jar) 
    UCHI    PetBat{1.3.7} [Pet Bat] (PetBat-1.7.10.jar) 
    UCHI    plantmegapack{4.29} [Plant Mega Pack] (plantmegapack-4.29-1.7.10-1492.jar) 
    UCHI    ProjRed|Transmission{4.7.0pre9.92} [ProjectRed Transmission] (ProjectRed-1.7.10-4.7.0pre9.92-Integration.jar) 
    UCHI    ProjRed|Transportation{4.7.0pre9.92} [ProjectRed Transportation] (ProjectRed-1.7.10-4.7.0pre9.92-Mechanical.jar) 
    UCHI    ProjRed|Exploration{4.7.0pre9.92} [ProjectRed Exploration] (ProjectRed-1.7.10-4.7.0pre9.92-World.jar) 
    UCHI    TConstruct{1.7.10-1.8.8.build988} [Tinkers' Construct] (TConstruct-1.7.10-1.8.8.jar) 
    UCHI    ProjRed|Compatibility{4.7.0pre9.92} [ProjectRed Compatibility] (ProjectRed-1.7.10-4.7.0pre9.92-Compat.jar) 
    UCHI    ProjRed|Integration{4.7.0pre9.92} [ProjectRed Integration] (ProjectRed-1.7.10-4.7.0pre9.92-Integration.jar) 
    UCHI    ProjRed|Fabrication{4.7.0pre9.92} [ProjectRed Fabrication] (ProjectRed-1.7.10-4.7.0pre9.92-Fabrication.jar) 
    UCHI    ProjRed|Illumination{4.7.0pre9.92} [ProjectRed Illumination] (ProjectRed-1.7.10-4.7.0pre9.92-Lighting.jar) 
    UCHI    ProjRed|Expansion{4.7.0pre9.92} [ProjectRed Expansion] (ProjectRed-1.7.10-4.7.0pre9.92-Mechanical.jar) 
    UCHI    simplefluidtanks{1.7.10-1.2.0.5} [Simple Fluid Tanks] (simplefluidtanks-1.7.10-1.2.0.5.jar) 
    UCHI    ubernetworkingantennas{0.1.0} [Über Networking Antennas] (ubernetworkingantennas-1.7.10-0.1.0.jar) 
    UCHI    warpbook{2.0.null} [Warp Book] (warpbook-1.7.10_2.0.36.jar) 
    UCHI    YABM{1.0.6} [Yet Another Backup Mod] (YABM-1.7.10-1.0.6.jar) 
    UCHI    Ztones{1.7.10} [Ztones] (Ztones-1.7.10-2.2.1.jar) 
    UCHI    McMultipart{1.2.0.345} [Minecraft Multipart Plugin] (ForgeMultipart-1.7.10-1.2.0.345-universal.jar) 
    UCHI    ForgeRelocation{0.0.1.4} [ForgeRelocation] (ForgeRelocation-0.0.1.4-universal.jar) 
    UCHI    MCFrames{1.0} [MCFrames] (ForgeRelocation-0.0.1.4-universal.jar) 
    UCHI    RelocationFMP{0.0.1.2} [RelocationFMP] (ForgeRelocationFMP-0.0.1.2-universal.jar) 
    UCHI    ForgeMicroblock{1.2.0.345} [Forge Microblocks] (ForgeMultipart-1.7.10-1.2.0.345-universal.jar) 
    CoFHCore: -[1.7.10]3.0.3-303
    Mantle Environment: DO NOT REPORT THIS CRASH! Unsupported mods in environment: optifine
    TConstruct Environment: Environment healthy.
    Forestry : Warning: You have mods that change the behavior of Minecraft, ForgeModLoader, and/or Minecraft Forge to your client: 
Optifine
These may have caused this error, and may not be supported. Try reproducing the crash WITHOUT these mods, and report it then.
    Launched Version: 1.7.10
    LWJGL: 2.9.1
    OpenGL: GeForce GT 425M/PCIe/SSE2 GL version 4.5.0 NVIDIA 353.62, NVIDIA Corporation
    GL Caps: Using GL 1.3 multitexturing.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Anisotropic filtering is supported and maximum anisotropy is 16.
Shaders are available because OpenGL 2.1 is supported.

    Is Modded: Definitely; Client brand changed to 'fml,forge'
    Type: Client (map_client.txt)
    Resource Packs: [msi_conversion_bearbeitet.zip, Fanver_Modded_Universal_1.3.5 - Angepasst.zip, PR_Luminance_V1.1.zip]
    Current Language: English (UK)
    Profiler Position: N/A (disabled)
    Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    Anisotropic Filtering: Off (1)

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.