Skip to content

Commit c92ad9d

Browse files
authored
Merge pull request #34 from JiroCab/experimental
1.7.9: Rushie has a headache, send headpats
2 parents 7351bfc + 098b42b commit c92ad9d

18 files changed

+994
-843
lines changed

assets/bundles/bundle.properties

+11-12
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ block.olupis-strata.details =TDB tack shooter go brrr
185185
block.olupis-atropos-shroom.name =Atropos Shroom
186186
block.olupis-atropos-shroom.description =Highly invasive mushroom can cause dangerous effects \n[orange]| [scarlet]WARNING REMOVE UPON SIGHT! [orange]|
187187
block.olupis-porcupine.name =[teal]Porcupine (bp)
188-
block.olupis-porcupine.description =Hurls a barrel of flammable liquid in a general area of ground enemies
188+
block.olupis-porcupine.description =Hurls a barrel of liquid in a general area of ground enemies
189189
block.olupis-porcupine.details =As counterintuitive it maybe, but forest fires are a key component for the proliferation of life in the nyfalian system, CinderBloom as the name may imply require ash of sorts in order to be a stepping stone for other life
190190

191191
block.olupis-rusty-drill.name =Rusty Drill
@@ -242,9 +242,9 @@ block.olupis-quartz-wall.description =Blocks bullets and energy based weapons. P
242242
block.olupis-quartz-wall-large.name =Large Quartz Wall
243243
block.olupis-quartz-wall-large.description =Large. Blocks bullets and energy based weapons. Provides better structure then it's iron counterpart
244244
block.olupis-cobalt-wall.name =Cobalt Wall
245-
block.olupis-cobalt-wall.description =Blocks bullets and discharges electric arcs when powered when damaged
245+
block.olupis-cobalt-wall.description =Blocks bullets and has a chance to discharges arc lightnings when powered on damaged
246246
block.olupis-cobalt-wall-large.name =Large Cobalt Wall
247-
block.olupis-cobalt-wall-large.description =Blocks bullets and discharges electric arcs when powered when damaged
247+
block.olupis-cobalt-wall-large.description =Blocks bullets and has a chance to discharges arc lightnings when powered on damaged
248248

249249

250250
block.olupis-core-remnant.name =Core: Remnant
@@ -371,16 +371,12 @@ block.olupis-river-sand.name =River Sand
371371
block.olupis-moss-boulder.name =Moss Boulder
372372
block.olupis-walltest.name =Spreding Moss Wall
373373
block.olupis-moss.name =Spreding Moss
374-
block.olupis-moss-ore-copper.name =Mossy Copper Ore
375-
block.olupis-moss-ore-oxidized-copper.name =Mossy Oxidized Copper Ore
376-
block.olupis-moss-ore-lead.name =Mossy Lead Ore
377-
block.olupis-moss-ore-oxidized-lead.name =Mossy Oxidized Lead Ore
378-
block.olupis-moss-ore-scrap.name =Mossy Scrap Ore
379-
block.olupis-moss-ore-coal.name =Mossy Coal Ore
380-
block.olupis-moss-ore-oxidized-iron.name =Mossy Oxidized Iron
381-
block.olupis-mossiest-overlay.name =Spreading Mossiest Overlay
374+
block.olupis-mossiest-overlay.name =Spreading Mossiest
375+
block.olupis-mossiest-overlay.ore-prefix =Mossiest
382376
block.olupis-mossier-overlay.name =Spreading Mossier Overlay
377+
block.olupis-mossier-overlay.ore-prefix =Mossier
383378
block.olupis-mossy-overlay.name =Spreading Mossy Overlay
379+
block.olupis-mossy-overlay.ore-prefix =Mossy
384380
block.olupis-glow-lilly.name =Glow Lilly
385381
block.olupis-rusted-metal.name =Rusted Metal
386382
block.olupis-non-reproductive-boompuff.name =Boom Puffs (Active)
@@ -494,18 +490,21 @@ item.olupis-condensed-biomatter.name =Planty Mush
494490
item.olupis-cobalt.name =Cobalt
495491
item.olupis-quartz.name =Quartz
496492
item.olupis-aluminum.name =Aluminium
497-
item.olupis-alco-alloy.name =alco Alloy
493+
item.olupis-alco-alloy.name =Alco Alloy
498494
item.olupis-power-ammo-item.name =Why? why do u see me???
499495

500496
item.olupis-rusty-iron.description =An early construction material. Capable of being refined. Can be used as ammo.
501497
item.olupis-iron.description =Refined iron, much harder & higher density than it's rusty form. Used as construction material and ammo.
502498
item.olupis-condensed-biomatter.description =Biological matter made out of spores. Can be converted into oil or used as fuel.
503499
item.olupis-cobalt.description =Conductive metal, lightweight, with low power loss. Used in advanced electronics.
504500
item.olupis-quartz.description =Reflective and study material. Used in optics and Insulation
501+
item.olupis-alco-alloy.description =Natural occurring alloy, A suitable building material
502+
item.olupis-aluminum.description =Lightweight, durable and more resistant to corrosion. Better construction material
505503

506504
item.olupis-rusty-iron.details = Abundant in the Nyfalian system, both as a natural ore and remnants.
507505
item.olupis-iron.details =More useful than its raw counterpart, but how long? only time will tell...
508506
item.olupis-condensed-biomatter.details =The Native of life form of olupis and it's moons in a small pod for industrial or culinary usage.
507+
item.olupis-aluminum.details =It's only a matter time before this will corrode like the others
509508

510509
liquid.olupis-steam.name =Steam
511510
liquid.olupis-heavy-oil.name =[accent]Heavy Oil (wip)
Loading
753 Bytes
Loading

changelog.txt

+17-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,23 @@
11
== Olupis Major change log ==
22
https://github.com/JiroCab/Olupis
3-
Last updated on 02/13/2025 (+8utc) by Jirocab/RushieWashie
3+
Last updated on 02/19/2025 (+8utc) by Jirocab/RushieWashie
44

5-
= Version 1-7-8 ()
5+
= Version 1-7-9 () =
6+
+ Added: Core Database Sprites for aero & striker
7+
+ Added: Command to see state of the Spreading moss on net clients
8+
~ Visual: Changed spreading ores' names to have a auto generated name instead of the long internal name
9+
~ Visual: One of the harden mud vent sprite variants was named wrong
10+
~ Visual: distribution not blending with: steamDrill, steamAgitator, rustyPump, ironPump, displacementPump, fortifiedCanister, fortifiedTank, all constructor & coreRemnant
11+
~ Visual: Minor changes to ironPump & steamBoiler
12+
~ Visual: Visual Added description to alcoAlloy & aluminum
13+
~ Balance: Reworked falcon's ground attack so the lightning hit targets instead of going in random directions
14+
~ Balance: Reworked costs, Research Costs & build menu placement (im sorry) of turrets above shredder, sorting them based on tech level like vanilla
15+
~ Balance: Buffed cobalt wall for no reason, now lightning uses the same one as falcon's discharge walls
16+
~ BugFix: lubraincatPool giving the wrong liquid
17+
~ BugFix: Added copper to the tech tree
18+
~ Improved: Moss spreading code (Wmf)
19+
20+
= Version 1-7-8 (7351bfc) = https://github.com/JiroCab/Nyfalis/tree/7351bfcb07e845e56d8f67e802dfd2d46860fd59
621
+ Added: little ui icons for aero & strikers weapons
722
- Balance: reworked nyctalus, faster set up, better range, weaker AtA missile, stronger landed weapon & switched weapon sprite to reduce confusion pteropus for now
823
- Balance: nerfed hp of all walls above rustyIron, as they scale too high per tier

mod.hjson

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ main: "olupis.NyfalisMain"
1414
#the mod description as seen in the mod dialog
1515
description: "(\u26A0Work in progress\u26A0)\n Yet another planet mod \nThat does it's best to give the player(s) a bit of something new,\n with a minor hint of what the base game has to offer, focus on RTS controls, and pain on top"
1616

17-
subtitle: "Yet another planet mod, v1.7.8"
17+
subtitle: "Yet another planet mod, v1.7.9"
1818

1919
#the mod version
20-
version: 1.7.8
20+
version: 1.7.9
2121

2222
#the minimum game build required to run this mod
2323
minGameVersion: 136

src/olupis/content/NyfalisBlocks.java

+39-10
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,7 @@
4646
import olupis.world.blocks.turret.UnstablePowerTurret;
4747
import olupis.world.blocks.unit.*;
4848
import olupis.world.consumer.ConsumeLubricant;
49-
import olupis.world.entities.bullets.HealOnlyBulletType;
50-
import olupis.world.entities.bullets.SpawnHelperBulletType;
49+
import olupis.world.entities.bullets.*;
5150
import olupis.world.entities.parts.*;
5251
import olupis.world.entities.pattern.ShootAlternateAlt;
5352

@@ -506,7 +505,7 @@ public static void LoadWorldTiles(){
506505
statusDuration = 120f;
507506
speedMultiplier = 1.05f;
508507
variants = 0;
509-
liquidDrop = emulsiveSlop;
508+
liquidDrop = lubricant;
510509
isLiquid = true;
511510
cacheLayer = CacheLayer.water;
512511
}};
@@ -903,6 +902,7 @@ public static void LoadBlocks(){
903902
}};
904903

905904
steamDrill = new Drill("steam-drill"){{
905+
squareSprite = false;
906906
hasPower = true;
907907
tier = 2;
908908
size = 3;
@@ -956,7 +956,7 @@ public static void LoadBlocks(){
956956

957957
steamAgitator = new AttributeCrafter("steam-agitator"){{
958958
outputsLiquid = solid = hasLiquids = true;
959-
displayEfficiency = rotate = false;
959+
displayEfficiency = rotate = squareSprite = false;
960960

961961
size = 3;
962962
boostScale = 0.1f;
@@ -1000,6 +1000,7 @@ public static void LoadBlocks(){
10001000
//endregion
10011001
//region Liquid
10021002
rustyPump = new Pump("rusty-pump"){{
1003+
squareSprite = false;
10031004
size = 1;
10041005
liquidCapacity = 10f;
10051006
pumpAmount = 0.06f;
@@ -1009,6 +1010,7 @@ public static void LoadBlocks(){
10091010
}};
10101011

10111012
ironPump = new Pump("iron-pump"){{
1013+
squareSprite = false;
10121014
size = 2;
10131015
liquidCapacity = 20f;
10141016
pumpAmount = 0.08f;
@@ -1018,6 +1020,8 @@ public static void LoadBlocks(){
10181020
}};
10191021

10201022
displacementPump = new BurstPump("displacement-pump"){{
1023+
squareSprite = false;
1024+
10211025
size = 3;
10221026
pumpTime = 310;
10231027
dumpScale = 1.3f;
@@ -1072,6 +1076,7 @@ public static void LoadBlocks(){
10721076
}};
10731077

10741078
fortifiedCanister = new LiquidRouter("pipe-canister"){{
1079+
squareSprite = false;
10751080
solid = true;
10761081
size = 2;
10771082
liquidPadding = 2f;
@@ -1082,6 +1087,7 @@ public static void LoadBlocks(){
10821087
}};
10831088

10841089
fortifiedTank = new LiquidRouter("pipe-tank"){{
1090+
squareSprite = false;
10851091
solid = true;
10861092
size = 3;
10871093
liquidPadding = 2f;
@@ -1138,7 +1144,7 @@ public static void LoadBlocks(){
11381144
drawer = new DrawMulti(
11391145
new DrawDefault(),
11401146
new DrawLiquidTile(Liquids.water),
1141-
new DrawLiquidTile(NyfalisItemsLiquid.steam),
1147+
new DrawLiquidTile(NyfalisItemsLiquid.steam){{padding = 6f;}},
11421148
new DrawRegion("-mid"),
11431149
new DrawFlame()
11441150
);
@@ -1300,13 +1306,15 @@ public static void LoadBlocks(){
13001306
consumeItem(alcoAlloy);
13011307
consumePower(80f /60f);
13021308
liquidOutputDirections = new int[]{4};
1303-
hasLiquids = outputsLiquid = rotate = quickRotate = true;
13041309
liquidOutputs = LiquidStack.with(Liquids.slag, 4.5f / 60f);
13051310
requirements(Category.crafting, with(iron, 25, lead, 25, copper, 25, alcoAlloy, 20));
1311+
1312+
squareSprite = false; //todo, this no work for some reason
1313+
hasLiquids = outputsLiquid = rotate = quickRotate = true;
13061314
drawer = new DrawMulti(
13071315
new DrawRegion("-bottom"),
13081316
new DrawLiquidTile(Liquids.slag, 2f),
1309-
new DrawRegion(),
1317+
new DrawDefault(),
13101318
new DrawRegion("-top"){{
13111319
buildingRotate = true;
13121320
}}
@@ -1389,7 +1397,7 @@ public static void LoadBlocks(){
13891397
itemCapacity = 40;
13901398
alternateCapacity = 40;
13911399
failedMakeSoundPitch = 0.7f;
1392-
hasAlternate = false;
1400+
hasAlternate = squareSprite = false;
13931401
ammo(
13941402
powerAmmoItem ,new SpawnHelperBulletType(){{
13951403
shootEffect = Fx.unitLand;
@@ -1426,6 +1434,8 @@ silicon, new SpawnHelperBulletType(){{
14261434

14271435
// arialConstruct -> offensive air units
14281436
arialConstruct = new ItemUnitTurret("arial-construct"){{
1437+
squareSprite = false;
1438+
14291439
size = 4;
14301440
shootY = 0f;
14311441
reload = 1200f;
@@ -1467,6 +1477,8 @@ graphite, new SpawnHelperBulletType(){{
14671477

14681478
// groundConstruct -> offensive ground units
14691479
groundConstruct = new ItemUnitTurret("ground-construct"){{
1480+
squareSprite = false;
1481+
14701482
size = 4;
14711483
reload = 1200f;
14721484
maxAmmo = 15;
@@ -1508,6 +1520,8 @@ graphite, new SpawnHelperBulletType(){{
15081520

15091521
//navalConstruct -> offensive naval units
15101522
navalConstruct = new ItemUnitTurret("naval-construct"){{
1523+
squareSprite = false;
1524+
15111525
size = 4;
15121526
reload = 1200f;
15131527
maxAmmo = 15;
@@ -1955,28 +1969,42 @@ public void drawPlace(int x, int y, int rotation, boolean valid){
19551969
}};
19561970

19571971

1972+
BulletType arcLighning =new ArcLightningBulletType(){{
1973+
hitGround = hitAir = hitBuilding = true;
1974+
rangeOverride = range = 150f;
1975+
damage = 10;
1976+
homingPower = 0.1f;
1977+
1978+
status = StatusEffects.none;
1979+
hitEffect= Fx.hitLancer;
1980+
lightningColor = hitColor = new Color().set(cobalt.color).lerp(surgeAlloy.color, 0.5f);
1981+
}};
1982+
19581983
cobaltWall = new PoweredLightingWall("cobalt-wall"){{
19591984
conductivePower = consumesPower = update = true;
1985+
vanillaLightning = false;
19601986
size = 1;
19611987
health = 1200;
19621988
buildCostMultiplier = 0.7f;
19631989
lightningChancePowered = 0.06f;
19641990
consumePower(5f / 60f);
19651991
researchCost = with(cobalt, 500, copper, 200);
19661992
requirements(Category.defense,with(cobalt, 6, silicon, 2));
1967-
lightningColor = new Color().set(cobalt.color).lerp(surgeAlloy.color, 0.5f);
1993+
dischargeBullet = arcLighning;
19681994
}};
19691995

19701996
cobaltWallLarge = new PoweredLightingWall("cobalt-wall-large"){{
19711997
conductivePower = consumesPower = update = true;
1998+
vanillaLightning = false;
1999+
19722000
size = 2;
19732001
health = 1200 * 4;
19742002
buildCostMultiplier = 0.7f;
19752003
lightningChancePowered = 0.06f;
19762004
consumePower(20f / 60f);
19772005
researchCost = with(cobalt, 1000, copper, 200);
19782006
requirements(Category.defense,with(cobalt, 24, silicon, 8));
1979-
lightningColor = new Color().set(cobalt.color).lerp(surgeAlloy.color, 0.5f);
2007+
dischargeBullet = arcLighning;
19802008
}};
19812009

19822010
//TODO: late game wall is also a router
@@ -2119,6 +2147,7 @@ public void drawPlace(int x, int y, int rotation, boolean valid){
21192147

21202148
coreRemnant = new PropellerCoreBlock("core-remnant"){{
21212149
alwaysUnlocked = isFirstTier = requiresCoreZone = true;
2150+
squareSprite = false;
21222151
unitAmount = size = 2;
21232152
itemCapacity = 1500;
21242153
unitCapModifier = 8;

src/olupis/content/NyfalisFxs.java

+18-18
Original file line numberDiff line numberDiff line change
@@ -220,25 +220,25 @@ public class NyfalisFxs extends Fx {
220220
Drawf.tri(e.x, e.y, w, 4f * e.fout(), e.rotation + 180f);
221221
}),
222222

223-
chainLightningAlt = new Effect(15f, 300f, e -> {
224-
if(!(e.data instanceof Position p)) return;
225-
float tx = p.getX(), ty = p.getY(), dst = Mathf.dst(e.x, e.y, tx, ty);
226-
Tmp.v1.set(p).sub(e.x, e.y).nor();
223+
chainLightningAlt = new Effect(10f, 300f, e -> {
224+
if(!(e.data instanceof Position p)) return;
225+
float tx = p.getX(), ty = p.getY(), dst = Mathf.dst(e.x, e.y, tx, ty);
226+
Tmp.v1.set(p).sub(e.x, e.y).nor();
227227

228-
float normx = Tmp.v1.x, normy = Tmp.v1.y;
229-
float range = 12f;
230-
int links = Mathf.ceil(dst / range);
231-
float spacing = dst / links;
228+
float normx = Tmp.v1.x, normy = Tmp.v1.y;
229+
float range = 12f;
230+
int links = Mathf.ceil(dst / range);
231+
float spacing = dst / links;
232232

233-
Draw.z(Layer.flyingUnitLow - 0.001f);
234-
Lines.stroke(2.5f * e.fout());
235-
Draw.color(Color.white, e.color, e.fin());
233+
Draw.z(Layer.flyingUnitLow - 0.001f);
234+
Lines.stroke(Math.max(6f * e.fout(), 1.5f));
235+
Draw.color(Color.white, e.color, e.fin());
236236

237-
Lines.beginLine();
237+
Lines.beginLine();
238238

239-
Lines.linePoint(e.x, e.y);
239+
Lines.linePoint(e.x, e.y);
240240

241-
rand.setSeed(e.id);
241+
rand.setSeed(e.id);
242242

243243
for(int i = 0; i < links; i++){
244244
float nx, ny;
@@ -252,11 +252,11 @@ public class NyfalisFxs extends Fx {
252252
ny = e.y + normy * len + Tmp.v1.y;
253253
}
254254

255-
Lines.linePoint(nx, ny);
256-
}
255+
Lines.linePoint(nx, ny);
256+
}
257257

258-
Lines.endLine();
259-
}).followParent(true).rotWithParent(false),
258+
Lines.endLine();
259+
}),
260260

261261
repairPinBeam = new Effect(20f, e -> {
262262
if(!(e.data instanceof Vec2 v)) return;

0 commit comments

Comments
 (0)