[B18] Oceanic World

Started by Juni, May 31, 2018, 11:22:09 PM

Previous topic - Next topic

Juni

Oceanic World will be a mod pack to unlock the oceans to exploration, exploitation, colonisation and naval warfare.

In case I drop off the planet, here are the current versions, download:
OWC
OWS

Start date: 28 May 2018
Est. Alpha Version Release: 6 June 2018

Sub-Mods:
Oceanic World Core: Alpha version mostly completed
-Ocean Biomes: Mostly completed
-Deep Water Terrain: Completed
-Sea Animals: Completed
-Speeds: Completed
-Sea Raiders: Designed, no code yet
-Textures: Mostly completed
Oceanic World Ships: Alpha version partially complete
-Benches: Mostly completed
-Kinds: Mostly completed
-Turrets: Mostly completed
-New Fuel Types: Designed, no code yet
-Special Abilities: Mostly completed
-Textures: Not started yet
-Oceanic World Core Integration: Not started yet
Oceanic World Terraform: Designed, no code yet
-Benches: Designed, no code yet
-Recipes: Designed, no code yet
-Textures: Not started yet

Future Plans:
-Oceanic World Path Avoid,  Version of Path Avoid which will automatically assign AI Pathing Costs to Terrain and Objects.

Author/s:
Producer: TBA
Design/Balancing: Juniper Webb (Junianna Weaver)
XML: Juniper Webb (Junianna Weaver)
C#: TBA
Textures: TBA
Other: TBA
Testing: Juniper Webb (Junianna Weaver)
TBA
TBA
TBA
TBA
TBA

Contributions:
Inspiration:
Matheryn for the idea to make an ocean mod. Discord: [vanirs] matheryn#8126

Code:
Thanks to Vendan for creating Path Avoid - A18, and Kiame for permission to utilise the updated code. Donate to KiameV.
Thanks to SulusDacor for creating SD mods (Steam) (Ludoen) (Githib), permission to utilise their code and the links provided to give me more inspiration.
Thanks to Jecrell (see Jecstools below) for allowing me to utilise vehicle code from Starwars-Factions.

Textures:
TBA

Dependant Mods:






Thank you to UnlimitedHugs for creating
their contributors and for
their words of encouragement.





Thank you to Jecrell and his team for creating
and for providing technical support.





Juni

#1
Draft about OWC:

  <name>[B18] Oceanic World Core</name>
  <author>Juniper Webb</author>
  <targetVersion>0.18.0</targetVersion>
  <url></url>
  <description>Oceanic World Core (OWC)
Changes all Biomes to Ocean, allows deep water and ocean colonisation. Includes changes to Animals, Raids, Weather, and Terrain.

Other mods in the Oceanic World pack (recommended):
Oceanic World Terraform (Makes it possible to terraform Deep Water immediately when you start in Deep Ocean.)
Oceanic World Ships (Adds many Vehicles for Naval transport and warfare.)

This OWC mod changes biomes:
All land biomes and lakes replaced with oceans.
Mountains still remain as outcrop islands surrounded by a strip of gravelly beach.
Only wild sea animals spawn in oceans. (Unless another mod like Animal Collab Proj adds more.)
Player and NPC faction bases can spawn in deep ocean or on low mountains.

This OWC mod changes terrain:
Water tiles, land tiles and ocean hexes, terrain path cost modified. (Necessary for Balance.)
All humans, animals and vehicles now move slowly over land.
Humans can now move slowly in deep water and oceans. (Necessary for colonising oceans.)
Animals and vehicles can now move at full speed in deep water and oceans.
Vehicles potentially can move faster than animals in deep water.

This OWC mod also:
Added lots of re-utilised sea animals.
Sea animals can move much faster in deep water than land animals.
Sea birds, and some legendary sea monsters can move faster than sea animals over/in deep water.
Changes raiders so they will arrive mounted on sea animals, and/or in warships. (Unless affected by other mods.)
Less storms and more clear weather.

Essential Support Mods (Mandatory):
HugsLib | http://steamcommunity.com/sharedfiles/filedetails/?id=818773962
JecsTools | http://steamcommunity.com/sharedfiles/filedetails/?id=932008009
Miscellaneous 'CORE' | http://steamcommunity.com/sharedfiles/filedetails/?id=704181221

Recommended Support Mods (Optional):
Path Avoid - A18 | http://steamcommunity.com/sharedfiles/filedetails/?id=1180719857

Juni

#2
Draft about OWS:

<name>[B18] Oceanic World Ships</name>
  <author>Juniper Webb</author>
  <targetVersion>0.18.0</targetVersion>
  <url></url>
  <description>Oceanic World Ships (OWS)
Add Ships to Rimworld. Standalone or as part of the Oceanic World Pack.

Other mods in the Oceanic World pack (recommended):
Oceanic World Core (Makes it possible to colonise oceans, and much more ocean related content.)
Oceanic World Terraform (Makes it possible to terraform deep water immediately when you start at any tech age.)

Neolithic boats:
Raft: Transports upto two people and 386kg goods anywhere.
Longship: Tiny warship that caries upto four people. Bellybow mounted on foredeck, Ram under it's bow.
Ferryman: Automated slave hauler. Self-destructs if destroyed.

Industrial ships:
Launch: Transports upto two people and 386kg goods anywhere. Much faster than a Raft, cannot attack in melee.
Destroyer: Medium warship best used against infantry or aircraft. Carries upto 6 people. Main batteries have fast firing guns, or Anti-aircraft posts fire very accurate long-range bullets.
Fighter: Tiny aircraft which has one pilot and moves very fast. Fires rockets (bomber mode) or very accurate long-range bullets (fighter mode).
Missile: Single use, large area of effect.

Spacer ships:
Suit: Space Marine exoskeleton modified for heavy amphibious hover infanty. Can be worn over other armor for extra protection, but prevents user from using hand-held weapons. Covered in many pieces of ablative armor and armed with many plasteel blades. Potentially allows user sustain heavy gunfire unhurt while tearing though armored defences unimpeded. Suit blades upgrade allows a cloud of blades shoot towards nearby enemies (Range 2.)
Skimmer: Heavy warship best used blow enemy warships apart from long range. Carries upto eight people. Turreted rail gun takes a long time to aim and warm up, but delivers an unstoppable magnetised projectile at insane speed. Vunerable to missiles and aircraft.
Striker: Heavy Aircraft designed to provide air superiority above Skimmers. One pilot, Tiny turreted Laser Cannons with singularity servos, singularity drive. Basically the perfect anti-missile, anti-aircraft platform. Vunerable to heavy guns due to it's relatively low speed, despite it's fast turning ability.
Drone: Automated defence hovercraft. Patrols your base perimeter. Equiped with a plasteel cutter for melee defence, very little armor and creates a small fusion explosion when destroyed. This makes it particularly effective against heavy infantry. Optional Ion Pulse turret for manually shooting enemies at range.

Turrets:
Belly Bow: Longship.
Triple Cannon Battery: Destroyer.
Quad AA Guns: Destroyer or Fighter.
Rocket Bay: Fighter (Bomber mode.)
Pentaplex Suit Blades: Space Marine Suit (Range 2.)
Ion Pulse Cannon: Drone (Manual targeting.)
Rail Gun: Skimmer.
Twin Laser Guns: Striker.

Fuel:
Wood: Raft.
Arrows: Longship.
Chemfuel: Launch.
C4 Explosive: Destroyer and Fighter.
Fuel Rods: Suit, Skimmer and Striker.

Resources:
Neolithic: Wood, Cloth and Steel.
Industrial: Steel, Components, Chemfuel and Electricity.
Spacer: Plasteel, Advanced Components, Uranium, Electricity and Research.

Essential Support Mods (Mandatory):
HugsLib | http://steamcommunity.com/sharedfiles/filedetails/?id=818773962
JecsTools | http://steamcommunity.com/sharedfiles/filedetails/?id=932008009
Miscellaneous 'CORE' | http://steamcommunity.com/sharedfiles/filedetails/?id=704181221

See OWC mod for recommended support mods.

IMPORTANT NOTES:
I have been challenged in the process of creating naval vehicles for rim world. I have looked at known bugs, issues and experimented with different work arounds. I have sought other mod creators' assistance and support, and gained permission to utilise their code in my own way. I hope to provide ships, hovercraft, aircraft and weapons that are reliable. To achieve this vision, I have made each vehicle fill a particular role, designed to skirt potentially unstable code. Some of my vehicles are tiny mechanoids, some are more akin to giant metal animals, and some are weapons made to look like a vehicle. I have also honestly highlighted where my lack of coding ability has affected my design.

All Vehicles:
In order to simplify driving vehicles, I have designated no passengers, gunners or pilots, but only drivers. Drivers can pilot, operate guns, or just sit there as a passenger. This reduces the complexity of operating vehicles, it either has a driver or it doesn't. Some vehicles are autonomous, and don't need drivers most of the time, but you can still load a driver when you find it necessary or desirable. Warships can carry multiple drivers, but only need one driver to move and operate weapons. This makes the additional drivers essentially passengers who will take over control of the warship if the first driver becomes incapacitated. It also make warships stout personnel carriers, which are unlikely to go idle if cabins are destroyed, drivers become incapacitated, or other disasters befall your fleet. Aircraft and other smaller vehicles however are much less robust.

Aircraft, hovercraft and small ships in this mod are designed with a deliberate combat design flaw. Obstinately I have made it likely your peon will become trapped inside if you don't manually unload the driver before the vehicle is downed. "Help I can't escape this ruined hulk!" But fear not! There is still a few chances to escape. If the vehicle self repairs, or is repaired by something else, you have another chance of unloading manually. Usually in this situation though, the enemy continues attacking your downed vehicle until the vehicle becomes so damaged your peon escapes. There is however, the very real possibility that your peon might die trapped inside the vehicle as it's destroyed. There is no safe place in a battle anymore, getting shot in the face by a rail gun, missile or heavy shell is also usually fatal. Having a diverse fleet could allow you to rescue downed pilots, infantry, and enemy prisoners. Transports can manually unload unassembled vehicles and supplies. Warships can unload spare personnel, and manually tasked with the a rescue mission.

Loading Driver/s: Ideally you want to move either the vehicle, and/or the potential driver to the same location first. If the peon is idle, and very close to the vehicle, when you command load driver it will enter a seat immediately. Otherwise, you may need to give the command twice while the game is paused. The first time you command load driver, it cancels the potential drivers current job, and forces it to drop what it's carrying.  The second time you command load driver, it tasks the potential driver to follow the vehicle, and enter when close. This is especially true for autonomous vehicles which are usually in constant motion, requiring drafting, and repeatedly ordered to move to your peon.

Low needs:
It is beyond my coding ability to change this effect. Any vehicles not drafted will automatically eject Drivers with low needs. You are required to keep the needs of your Drivers in mind. As compensation, warships can have multiple drivers, so are less likely to go idle due to low needs.

Caravans:
There are many caravan complexities, I will update compatibility as I get closer to completion and test different mods and settings. I will ensure that all my vehicles have the same payload capacity, while in a caravan, on a base map or in an encampment. I will also provide mechanics that allow all vehicles to potentially join a caravan, although not guaranteed.

Turrets:
Your peons can equip turrets as hand-held weapons, but can't drop them once equipped. This issue is beyond my coding ability to change. Until I stumble across a way to force them to drop turret, or learn more code, think of this as an irreversable bionic weapon upgrade. I will try to make all turrets underpowered, so that this does not constitute an exploit.

Different vehicles have different AI code, after installing a turret on a vehicle, you may need to draft/un-draft it to reset.

Launch:
Inflatable speed boat, cannot melee attack, only transport and weak melee defence.

Missile:
Technically not a vehicle, it is a manufacturable orbital bombardment transmitter. You need to equip the missile parts box, draft your peon, and then select a point on the map. Simultaneously a targeting beam appears at the target location, and the area is repeatedly bombarded. This missile model differs from the standard rim world model, in that it is cheaper, has longer range but does not guarantee that your own nearby units will survive.
Missile technical details:
Maximum targeting distance from launcher 999
Minimum targeting distance from friendly unit 8
Approximate diameter of bombardment area 30

Drone:
Making a fully automated moving turret is beyond my coding ability. The drones main role as a relatively cheap space age unit, is disposable melee defence fodder, particularly since raiders target outlying drones first. It will only defend itself if engaged by a melee attacker, and if destroyed will cause a small explosion. As soon as it's assembled, it will start wandering the map, drafted or undrafted. You can draft it and manually command it to move to a specific location or melee attack a specific target. If a laser turret is installed, you can also manually command ranged attack against a specific target. I have paradoxically given the drone a driver's seat, necessary for joining a caravan, or desirable when an extra seat is needed. Unfortunately as soon as the drone becomes idle, by completing a manual command, it will return to wandering, despite hostiles in turret range, driver or no driver. If you wish to install a turret, you need to manually keep moving the drone back to your peon until it can start construction. If you also install "RunAndGun" and manually command it to move near hostiles, the drone's laser turret will automatically target hostiles until it reaches its destination and goes back to wander mode. I discovered this while racing around an enemy base in the following video. Video of Drone circling an enemy base.

Juni

Draft about OWT:

Not started, reserving post slot.

Juni

Call of Juni:

I can't make this work by myself, well I can, but it won't be polished. I am a retired programmer with a complex mental disability. This means I spend 18+ hours a day in front of a computer, have frequent meltdowns and even though I could learn C#, I would prefer not to. In the past I have programmed in Turbobasic, Fortran, C++, JScript, DHTML, ASP, and many more scripting languages. When I was young, I dreamed of writting computer games for a living. I never reached that goal, despite writting thousands of little games for my own amusment, and working as a programmer for various commercial organisations. I am very good in short bursts, designing the mechanics of a game, testing how balanced it is, and writing little packets of code. I cannot organise, produce, make artwork or sustain long coding projects.

If you know of, or yourself are inclined to help me, that would be wonderful. I place no commitment on you to see this to it's completion. It will always be a work in progress, given the nature of the constant movement of goalposts as the core game is updated, dependant mods are updated, and the direction of the project branches as it grows. I will make all my work on this program open to all, anyone can use it, copy it, modify it. You do not need to credit me. If you wish to contribute, but keep rights to your own work, I understand, and am flexible enough to accommodate.

If you feel I have plagiarized your work without credit please let me know how you would like me to fix it. I will either credit you appropriately, or remove the offending content from my mod, and replace it with something original.

If you are reading this because I linked you to this thread, please let me know your thoughts, honestly good or bad.

Happy gaming,
Juni.



Roolo

Really ambitious project. I'll keep my eye on this. Good luck!

Kori


Umbreon117

I have one very simple and easy to read response for this.

YES PLEASE!!!!!!
I'll shoot your colonists...After a long nap.

PM_ME_NAKED_SINGULARITIES

#8
I cannot stress enough how much I love the ideas of this project! I am extremely entry level in my coding knowledge but I'm trying to self teach and if there is anything I can help with I'd love to contribute. Either way keep up the amazing work, really excited for this one! ;D

Edit: Also something i am curious about; would this mod be compatible with the mod "Natures Pretty Sweet"?

Juni

#9
@Singularities, I am planning to test that mod against my mod, since they both mess with biomes, etc. I will keep everyone updated on compatibility issues after I release the alpha version. It is too early to know if it will or won't be compatible. I haven't got permission to re-use the code I need for OWT yet, but that might be something easy for you to try to put together?

PM_ME_NAKED_SINGULARITIES

I hope there is a way to have both mods work together. I have an exam in the middle of this week but starting on next friday I should be able to dedicate much more time to helping out in any way I can. Could getting permission to re-use the code wait until then? Also where/what mod are you looking to re-use code from? Thanks for reply btw!

PM_ME_NAKED_SINGULARITIES

Hey Juni, Just checking in to see if this mod is still being worked on. If so I'd still love to help out.