Skip to content

Commit

Permalink
Update changelog
Browse files Browse the repository at this point in the history
  • Loading branch information
Pyrofab committed Aug 12, 2021
2 parents e82bac8 + 346e843 commit f1412b8
Show file tree
Hide file tree
Showing 92 changed files with 1,769 additions and 339 deletions.
11 changes: 9 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,12 @@ repositories {
name = "TerraformersMC"
url = "https://maven.kotlindiscord.com/repository/terraformers/"
}
maven {
url = "https://maven.siphalor.de/"
content {
includeGroup 'de.siphalor'
}
}
maven {
name = 'JitPack'
url = 'https://jitpack.io'
Expand Down Expand Up @@ -282,11 +288,12 @@ dependencies {
modRuntime("com.github.apace100:calio:${calio_version}") { transitive = false }
modCompileOnly("com.github.apace100:origins-fabric:${origins_version}") { transitive = false }
modRuntime("com.github.apace100:origins-fabric:${origins_version}") { transitive = false }
modRuntime "com.github.Globox1997:BackSlot:${backslot_version}"
modCompileOnly("io.github.HyperPigeon:Eldritch-Mobs:${eldritch_mobs_version}") { transitive = false }
// modRuntime "io.github.cottonmc:LibGui:${libgui_version}"
modCompileOnly("curse.maven:haema-391257:${haema_version}")
// modRuntime("curse.maven:haema-391257:${haema_version}")
// modRuntime("vazkii.patchouli:Patchouli:${project.patchouli_version}")
modRuntime("curse.maven:haema-391257:${haema_version}")
modRuntime("vazkii.patchouli:Patchouli:${project.patchouli_version}")
modRuntime("net.fabricmc:fabric-language-kotlin:${flk_version}")
modRuntime("io.github.onyxstudios.Cardinal-Components-API:cardinal-components-world:${rootProject.cca_version}")
modCompileOnly("curse.maven:golems-galore-387197:${golems_galore_version}")
Expand Down
45 changes: 45 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,41 @@ Version 2.0.0

**Really important warning: future alphas are extremely likely to break compatibility with worlds started with this alpha. Don't start using those versions on any world you care about.**

### Changes in Alpha 10
- Added (heavily WIP) obelisk rifts, a new way to travel between obelisks as a dissociated soul
- Added some particle effects for mobs that have been converted during possession (can be possessed without emancipation)
- Added the `soul_capture_blacklist` tag to prevent capturing some mobs' souls
- Added a texture for shattered soul vessels
- Added an empty tag for mobs that carry a hotbar but not a whole inventory
- Undead mobs now have improved night vision - although not as good as dissociated souls
- Undead mobs also use the Haema vampire vision shader when the latter is available
- Baby zombies and piglins can now respectively ride chickens and striders
- Made the Mortician functional (still WIP) \[Thanks Sekoia!]
- Updated Romanian translation \[Thanks AwsAlex!]
- Removed some useless obelisk structure tags
- Removed crying obsidian from valid obelisk core blocks
- Increased natural player soul offense stat from 10 to 15
- Attrition now reduces soul offense
- Increased ichor vessels' effect duration to 10mn
- Tweaked the ichor vessel's use time and animation
- Tweaked the soul capture particle effects
- Ichor vessels and obelisks no longer give potion particles
- Added compatibility with BackSlot
- Made mounts also transfer in creative mode when possesion stops
- Soulless endermen no longer teleport you around when you try possessing them without emancipation
- Possession now ends when a player gets into spectator mode
- Made dolphins flop on land
- Optimized textures \[Thanks RDKRACZ!]
- Optimized and fixed a couple bugs with obelisk detection
- Fixed empty vessels not being able to capture souls at all
- Fixed attrition not increasing on host death
- Fixed possessed ravagers breaking leaves clientside when mobGriefing was disabled
- Fixed axolotls going way too fast on land

#### Pandemonium
- Fixed the wandering spirit origin hopefully
- Moved the mortician to base requiem

### Changes in Alpha 9
- Added recipes for all tachylite derivatives (tachylite itself is still unobtainable in survival)
- Fixed inability to right-click mobs unleashed mobs unless the players themselves are possessing a mob
Expand Down Expand Up @@ -60,6 +95,7 @@ Updated to MC 1.17
- Added Tachylite blocks:
- Added Tachylite, Chiseled Tachylite (+slabs, stairs and pillars), Polished Tachylite (+slabs, stairs and pillars), and Scraped Tachylite
- Added Tachylite Runestone for all soulbound status effects
- Added obelisk rifts, a new way to travel between obelisks as a dissociated soul
- Added Tachylite Obelisks, a new player-made structure
- Added Soul Vessel items:
- Added the Empty Soul Vessel, a rare item that is used to obtain most of the new content
Expand All @@ -73,6 +109,7 @@ Updated to MC 1.17
- yep, they use the same models as Illuminations' Will o' Wisp. What did you expect, they're souls.
- Added player shells, static bodies of soulless players (previously available in Pandemonium)
- Contrary to previous pandemonium versions, they are now tracked across dimensions
- Undead mobs now have improved night vision - although not as good as dissociated souls

**Changes**
- Some datapack things have changed
Expand All @@ -82,13 +119,19 @@ Updated to MC 1.17
- The texture for Humanity enchantment books has been slightly tweaked, because why not
- Whether possessed entities can sleep is now controlled by the `requiem:regular_sleepers` tag
- This tag includes villagers, foxes and cats by default
- Possession now ends when a player gets into spectator mode
- Updated Romanian translation \[Thanks AwsAlex!]
- Optimized textures \[Thanks RDKRACZ!]

**Mod Interaction**
- Updated Origins compatibility
- Updated Golems Galore compatibility
- Updated Mod Menu metadata
- Updated The Bumblezone compatibility
- **Requiem's API got breaking changes, if you are a modder doing compatibility with Requiem make sure to check things work fine !**
- Added compatibility with BackSlot
- Belt and back slots' availability are linked to the ability to carry armor
- Undead mobs now use the Haema vampire vision shader when the latter is available
- Fixed shell creation issues with Origins
- Fixed crash with Iris

Expand All @@ -100,6 +143,8 @@ Updated to MC 1.17
- Fixed possessed mobs sleeping standing up
- Fixed leads getting attached to your soul rather than to your host during possession
- Fixed possessed phantoms looking the wrong way
- Fixed possessed ravagers breaking leaves clientside when mobGriefing was disabled
- Fixed dolphins not going flop flop outside water

#### Pandemonium
**Additions**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,6 @@ public void onRequiemInitialize() {
PossessionStartCallback.EVENT.unregister(new Identifier(Requiem.MOD_ID, "enderman"));
PossessionStartCallback.EVENT.register(Pandemonium.id("allow_everything"), (target, possessor, simulate) -> PossessionStartCallback.Result.ALLOW);
}
PossessionStartCallback.EVENT.register(Pandemonium.id("deny_penance_three"), ((target, possessor, simulate) ->
PenanceStatusEffect.getLevel(possessor) >= 2 ? PossessionStartCallback.Result.DENY : PossessionStartCallback.Result.PASS));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,20 +34,16 @@
*/
package ladysnake.pandemonium.client;

import ladysnake.pandemonium.client.render.entity.MorticianEntityRenderer;
import ladysnake.pandemonium.common.entity.PandemoniumEntities;
import ladysnake.requiem.api.v1.annotation.CalledThroughReflection;
import ladysnake.requiem.api.v1.event.minecraft.client.CrosshairRenderCallback;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.rendereregistry.v1.EntityRendererRegistry;
import net.minecraft.util.Identifier;

@CalledThroughReflection
public class PandemoniumClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
ClientMessageHandling.init();
EntityRendererRegistry.INSTANCE.register(PandemoniumEntities.MORTICIAN, MorticianEntityRenderer::new);
this.registerCallbacks();
this.registerSprites();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,22 +34,8 @@
*/
package ladysnake.pandemonium.common.entity;

import ladysnake.requiem.Requiem;
import net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityTypeBuilder;
import net.minecraft.entity.EntityDimensions;
import net.minecraft.entity.EntityType;
import net.minecraft.entity.SpawnGroup;
import net.minecraft.util.registry.Registry;

public final class PandemoniumEntities {
public static final EntityType<MorticianEntity> MORTICIAN = FabricEntityTypeBuilder.createLiving()
.spawnGroup(SpawnGroup.CREATURE)
.entityFactory(MorticianEntity::new)
.defaultAttributes(MorticianEntity::createMobAttributes)
.dimensions(EntityDimensions.fixed(0.6f, 1.95f))
.build();

public static void init() {
Registry.register(Registry.ENTITY_TYPE, Requiem.id("mortician"), MORTICIAN);

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
}
]
},
"origins": ["requiem:wandering_spirit"]
"origins": ["pandemonium:wandering_spirit"]
}
]
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"type": "requiem:soul_type",
"value": "requiem:wandering_spirit",
"value": "pandemonium:wandering_spirit",
"name": "origins:power.pandemonium.wandering_spirit.name",
"description": "origins:power.pandemonium.wandering_spirit.description"
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
"package": "ladysnake.pandemonium.mixin.common",
"compatibilityLevel": "JAVA_8",
"mixins": [
"entity.FollowTargetGoalMixin"
],
"injectors": {
"defaultRequire": 1
Expand Down
11 changes: 6 additions & 5 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
org.gradle.jvmargs = -Xmx5G

# Base properties
mod_version = 2.0.0-alpha.9
mod_version = 2.0.0-alpha.10
maven_group = io.github.ladysnake

#General
Expand All @@ -18,7 +18,7 @@ fabric_version=0.37.0+1.17
cca_version = 3.1.1
satin_version = 1.6.4
pal_version = 1.3.0
locki_version = 0.4.1
locki_version = 0.5.0
impersonate_version=2.3.3
automatone_version=0.4.1
fpa_version=0.1-SNAPSHOT
Expand All @@ -36,6 +36,7 @@ apoli_version=1.0.3
calio_version=1.0.1
origins_version=1.0.2
biome_makeover_version=1.3.0
backslot_version=master-SNAPSHOT
autoconfig_version=3.2.2
fallflyinglib_version=3.0.0-beta.2
## v2.2.0
Expand All @@ -46,9 +47,9 @@ snowmercy_version=3253604
flk_version=1.6.0+kotlin.1.5.0
eldritch_mobs_version=734d5fc
libgui_version=3.3.5+1.16.5
## Haema v1.7.3
haema_version=3380616
patchouli_version=1.16.4-50-FABRIC
## Haema v1.7.4
haema_version=3419193
patchouli_version=1.17.1-55-FABRIC-SNAPSHOT
acu_version=3.3.1
## Bewitchment v1.16.5-15
bewitchment_version=3319889
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@ public interface ObeliskEffectRune extends ObeliskRune {
@Override
default void applyEffect(ServerPlayerEntity target, int runeLevel, int obeliskWidth) {
int effectDuration = (9 + obeliskWidth * 2) * 20;
target.addStatusEffect(new StatusEffectInstance(this.getEffect(), effectDuration, runeLevel - 1, true, true));
target.addStatusEffect(new StatusEffectInstance(this.getEffect(), effectDuration, runeLevel - 1, true, false, true));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import ladysnake.requiem.api.v1.entity.movement.SwimMode;
import ladysnake.requiem.api.v1.entity.movement.WalkMode;
import net.fabricmc.fabric.api.util.TriState;
import net.minecraft.entity.Entity;

public interface MovementConfig {
/**
Expand All @@ -46,13 +47,22 @@ public interface MovementConfig {
float getFallSpeedModifier();

/**
* Returns the speed modifier that should be applied while walking by movement alterers using this config.
* Returns the speed modifier that should be applied while not airborne by movement alterers using this config.
* The entity's ground speed will be multiplied by this amount.
* The modification is applied using an {@link net.minecraft.entity.attribute.EntityAttributeModifier}.
*
* @return the ground speed modifier that should be applied by movement alterers using this config
*/
float getWalkSpeedModifier();
float getLandedSpeedModifier();

/**
* Returns the speed modifier that should be applied when an entity is {@linkplain Entity#isTouchingWater() moving through water}.
* The entity's speed will be multiplied by this amount.
* The modification is applied using an {@link net.minecraft.entity.attribute.EntityAttributeModifier}.
*
* @return the water speed modifier that should be applied by movement alterers using this config
*/
float getWaterSpeedModifier();

/**
* Returns the inertia that should be applied by movement alterers using this config.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@
*/
package ladysnake.requiem.api.v1.possession;

import dev.onyxstudios.cca.api.v3.component.Component;
import dev.onyxstudios.cca.api.v3.component.ComponentKey;
import dev.onyxstudios.cca.api.v3.component.ComponentRegistry;
import dev.onyxstudios.cca.api.v3.component.tick.ClientTickingComponent;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.nbt.NbtCompound;
import net.minecraft.util.Identifier;

public interface PossessedData extends Component {
public interface PossessedData extends ClientTickingComponent {
ComponentKey<PossessedData> KEY = ComponentRegistry.getOrCreate(new Identifier("requiem", "possessed_data"), PossessedData.class);

NbtCompound getHungerData();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,37 +20,45 @@
import com.mojang.serialization.Codec;
import net.fabricmc.fabric.api.event.registry.FabricRegistryBuilder;
import net.minecraft.util.Identifier;
import net.minecraft.util.dynamic.GlobalPos;
import net.minecraft.util.registry.Registry;
import net.minecraft.util.registry.SimpleRegistry;

import java.util.Objects;

/**
* A data type that can be stored in a {@link GlobalRecord}.
*
* @param <T> type for which the {@code RecordType} is being registered.
* @since 2.0.0
*/
public final class RecordType<T> {
@SuppressWarnings("unchecked")
public static final SimpleRegistry<RecordType<?>> REGISTRY =
FabricRegistryBuilder.createSimple((Class<RecordType<?>>) (Class<?>) RecordType.class, new Identifier("requiem", "record_types")).buildAndRegister();

public static final RecordType<EntityPointer> ENTITY_POINTER = register(new Identifier("requiem", "entity_ref"), EntityPointer.CODEC);

public static Identifier getId(RecordType<?> type) {
return Objects.requireNonNull(REGISTRY.getId(type));
}
public static final RecordType<GlobalPos> BLOCK_ENTITY_POINTER = register(new Identifier("requiem", "block_entity_ref"), GlobalPos.CODEC);

public Codec<T> getCodec() {
return codec;
}

private final Identifier id;
private final Codec<T> codec;

private RecordType(Codec<T> codec) {
private RecordType(Identifier id, Codec<T> codec) {
this.id = id;
this.codec = codec;
}

public Identifier getId() {
return this.id;
}

@Override
public String toString() {
return this.id.toString();
}

/**
* Creates and registers a new {@link RecordType} with the given id.
*
Expand All @@ -60,6 +68,6 @@ private RecordType(Codec<T> codec) {
* @return a newly registered {@link RecordType} for encoding instances of {@code T}
*/
public static <T> RecordType<T> register(Identifier id, Codec<T> codec) {
return Registry.register(REGISTRY, id, new RecordType<>(codec));
return Registry.register(REGISTRY, id, new RecordType<>(id, codec));
}
}
3 changes: 2 additions & 1 deletion requiem-api/src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@
"requiem:ai_toggle",
"requiem:global_record_keeper",
"requiem:entity_clerk",
"requiem:body_tracker"
"requiem:body_tracker",
"requiem:soul_holder"
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,12 @@
public class EntityAiToggle implements AutoSyncedComponent {
public static final ComponentKey<EntityAiToggle> KEY = ComponentRegistry.getOrCreate(RequiemCore.id("ai_toggle"), EntityAiToggle.class);

public static EntityAiToggle get(LivingEntity owner) {
return KEY.get(owner);
}

public static boolean isAiDisabled(LivingEntity entity) {
return KEY.get(entity).isAiDisabled();
return get(entity).isAiDisabled();
}

private final LivingEntity owner;
Expand Down
Loading

0 comments on commit f1412b8

Please sign in to comment.