Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Advanced search  


Starsector 0.97a is out! (02/02/24); New blog post: New music for Galatia Academy (06/12/24)

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - tomatopaste

Pages: [1] 2
Suggestions / Strafing hullmod
« on: December 20, 2023, 06:37:47 PM »
Quick idea for a useful new vanilla hullmod: "Auxiliary Lateral Boosters". Boosts strafing movement acceleration by 100%.
Would be mostly useful for attempting to flank slower turning ships as a player, as well as giving bigger ships a chance to dodge reapers and the like, increasing the skill ceiling of the ship it is applied to.

Suggestions / Light Mauler
« on: November 05, 2023, 08:09:48 PM »
Small ballistic mounts have only one okay HE option, and one terrible budget option in the Light Assault Gun and Light Mortar respectively. Since there are a few really good kinetic options for small ballistics, wouldn't it make sense for a Light Mauler weapon to be added to the game? Especially since the name Heavy Mauler implies that there is a light version around too, something that confused me when I first started playing (see Heavy Machine Gun in shops, then seeing a Light Machine Gun downgrade, then seeing Heavy Mauler, but no Light mauler). Having a 700 range HE high hit-strength armour piercing small ballistic would open some doors for frigate loadouts too. Hope this makes sense, cheers.

Bug Reports & Support / DEM AI bugs
« on: May 10, 2023, 11:25:05 AM »
A couple of bugs I've noticed

- Hydra DEM launchers will autofire and the first stage missile will target ship hulks, the DEMs that pop out will then dump their beams into it. Specifically, an enemy ship will die and spawn a hulk, then the hydra autofire ai will launch it at that hulk.
- The dragonfire missile overcorrects for movement of targeted ships massively, testing vs sim hound at point blank resulted in around 6-7 out of 8 launches at point blank failing to trigger the second stage of the torpedo. I'm calling this a bug since if the dragonfire actually manages to get a lock, the missile will easily turn fast enough to keep the hound in its line of sight. An AI hammerhead can also consistently juke the dragonfire and cause it to flameout before managing to reach the second stage maybe half of the time. I think the missile AI might need to bias facing towards the target's current position instead of attempting to face the predicted location. If the behaviour is intended then the OP cost or ammo count of the dragonfire needs to be tweaked since it's just not as good as dumb fire torps in most situations.


Suggestions / Make SMODS a post-battle upgrade only option
« on: January 06, 2023, 01:45:01 AM »
The current SMOD implementation of building in mods with an arbitrary token is not very interesting. Why should a brand new ship printed off the production line be able to install hullmods for no cost? "Story point" hullmods should be reserved for ships that have distinguished themselves in battle and have the battle scars necessary to allow the extensive conversion and intrusive maintenance to justify the installation of SMODS, where enterprising engineers can find an opportunity to make an aftermarket modification an intrinsic part of the ship's identity.

Hence my idea is to add an additional dialog to post-battle salvage where ships have a chance to be eligible for removing the OP cost of one of their installed hullmods and making it a permanent SMOD on the ship hull. Commanding officers can increase the chance significantly. I think this will go a long way to making SMODS feel a lot more like the player writing their own story instead of being a generic premium currency for making ships more powerful.

Suggestions / Give the pulse laser a bonus vs shields
« on: December 19, 2022, 10:39:20 PM »
The pulse laser is easily the least useful medium energy weapon in my experience because it lacks any specialised role and just isn't worth the slot when weapons like the ion pulser exist. Giving the pulse laser a ~25% bonus vs shields would go a long way to making it have any effective use in high tech loadouts.

Modding / [0.97a-RC6] Combat Misc Utilities v0.4.1
« on: December 05, 2022, 07:58:49 AM »

This mod is a library mod that is required for several other mods I'm maintaining. Other mods may use this as a dependency but I do not guarantee support unless you message me about write/release access to the git repository.

Feature List
    -High performance pooled particle renderers with full control over particle behaviour
        -Simple to implement and debug
        -Use default or custom compute methods to determine particle advance behaviour per frame
            -Use to change alpha, shape, colour etc. over time
        -Particle count cap settings to stop bad implementations overwhelming others
        -Uses global manager to prevent going over particle cap
    -Sprite renderer
    -Implosion effect shader
    -Segmented line shader program renderer for trails etc.
        -Render sprites or custom shader programs along segments
        -Additional helper class for managing trail instances
    -Supports custom shader plugins that extend BaseRenderPlugin
    -Requires OpenGL 3.3 support
    -Feature-complete scripts that mimic ship systems
    -Allows for arbitrary script execution based on specific ship
    -Can be applied in any combination
    -Automatic hotkey mapping
    -Fully custom UI implemented
        -Hooks for rendering own UI without visual overlaps
Barebones Immediate GUI Library
    - buttons, text, text input, panels, grids
    - used for multiplayer UI
    - screen scaling not yet supported
Debug GUI:
    -Display data from any script with global methods
    -Requires data to be set per-frame, smooth fadeout over 1 second
    -Uses simple keymap system to maintain text in list
    -Flexible graphing tool
    -Dynamic display panel adjustment with '[' ']' keys
    -Support for custom renderer containers

Modding / [0.95.1a-RC6] Combat Multiplayer Project
« on: May 07, 2022, 01:33:44 PM »
Allow a user to host a multiplayer combat session that other users may connect to via direct IP address and participate in. Built on an custom-written netcode architecture.
no guarantee the nightly builds wont just crash on launch, requires beta cmutils from the git repository, console commands, lazylib

Discord server for development and discussion here

- 255 player server limit (realistically much less)
- currently supports:
  - ships (basic data available through ShipAPI)
    - armour grid state
    - shield state (currently janky, known flickering)
    - engine states (flameouts, damage)
  - missiles
  - projectiles (rays and regular)
  - beams
  - mutable ship variant synching and on-demand loading
  - weapons (basic behaviours: rotation, arcs, damage)
  - simulates player control
    - a client cannot 'directly' control their ship, instead their inputs are sent to the server before effects on their current ship appear
    - weapon group switching
    - autofire toggling
    - ship system usage, venting, shooting, fighter toggle
    - regular/shift mode movement controls
    - mouse cursor
    - shield toggle (currently janky)
 - additional features
    - netcode architecture modeled on the source sdk
    - simple linear interpolation mode for data records (used in e.g. ship positions, rotation)
    - lots of bit packing to reduce packet sizes
    - in-game text chat with custom usernames (edit in settings.json)
    - uses dual UDP/TCP servers for priority data such as variants needed to preload combat and real-time data sync
    - custom UI
        - join game, host game
        - ship selection, currently an instant switch (including enemy ships)

Mods / [0.96a-RC8] HexShields - Shield Reskin v1.3.1
« on: January 25, 2022, 06:49:19 AM »

Requires the CMUtils mod as a dependency!

Feature list
  • smoothly reskins shields with cool hexagons
  • vanilla-imitation visual mode
  • disables vanilla shield rendering for a true performance boost
  • three shading modes available (settings.json to change)
  • can be added/removed from saves whenever
  • requires hardware supporting gl330
  • uses whitelist csv to replace shields based on hullstyle (won't affect modded hullstyle ships unless mod adds whitelist csv entry to its config, or user adds manually)
  • efficient renderer, virtually no performance impact on most systems (requires hardware supporting gl 3.3,  might even boost performance like FER mod, needs testing)
  • seamless 360 shields (unlike vanilla, shields are ruined forever)

note 1: jitter level can be adjusted (and disabled) by going to data/shaders/shield.frag and setting the jitter multiplier value to the desired amount
note 2: some scripts that force shields to be a certain colour on frame may run after this plugin, making a double shield appear (e.g. paragon fortress system, caliph)

Vanilla imitation mode

Title explains it essentially, the idea is to give civilian shuttles a comedic niche use as useful raid vessels. Basically, the new hullmod would provide a much reduced assault bonus compared to the regular hullmod, but the twist would be making it reduce the reputation impact of a marine raid, providing a huge reduction on a tiny marine force, but falling off with larger raids. This would be since the player is using anonymous civilian ships to ferry marines, which could be much harder for ground authorities to associate with the player as being responsible.

Mods / [0.95.1a-RC6] Fast Engine Rendering v1.1.2 - Combat FPS Booster
« on: September 13, 2021, 02:13:19 PM »
Fast Engine Rendering v1.1.2

Uses modern OpenGL rendering techniques to efficiently render custom engine plumes. The purpose of this mod is a performance boost, taking better advantage of GPU horsepower. The performance boost is found by using a single batch call to render plumes in a single operation, avoiding the lengthy frame time that vanilla uses to render engine plumes iteratively with fixed function rendering.

Requires a GPU that supports OpenGL 3.3

- Replace SHIP (and fighter) engine plumes and glows with a fast instanced renderer. Moderate testing suggests a ~25% increase in performance in large battles with many fighter/ships, your mileage may vary.
- Crisp and smooth engine visual

- Does not affect missile engines, they will still use vanilla behaviour.

-visual improvements
(full changelog in mod folder)



Suggestions / Every ship requires officer
« on: July 28, 2021, 12:06:44 AM »
Considering how powerful skills are, ships without them act as pretty much cannon fodder. My suggestion is requiring a ship to have a commanding officer before it can be deployed in combat. This would see a lot more skill-related counterplay in the player can pick targets based on skills, and since there would be fewer targets with no unique characteristics to stomp combat would be more interesting. This also has the effect of limiting fleet size based on the number of officers the player is fielding.

Some tweaks to accomodate this would be allowing the reassignment of officers in combat and/deployment, making officer leveling more nuanced, and increasing the rate at which officers can be acquired, potentially through capturing, promoting etc.

Mods / [0.95.1a-RC6] DroneLib v1.1.1
« on: July 12, 2021, 08:23:31 AM »

- discontinued -

Much of the code and concepts in this mod were moved to CMUtils for various reasons.

General Discussion / Ship engines using pure GLSL shader maths
« on: June 30, 2021, 02:37:51 PM »
Hello, I've spent an 'evening' fiddling with GLSL shaders in a bid to approximate vanilla style engine rendering, which uses a few glow textures and the fixed function render pipeline. The performance increase of using a modern fragment shader is debatable but it was a fun project. There is a suprisingly little amount of maths required to produce a convincing animation! The shader was developed using and will probably be used for some of my mod-related shenanigans at some point.


GLSL code
void mainImage( out vec4 fragColor, in vec2 fragCoord )
    // Normalized pixel coordinates (from 0 to 1)
    vec2 p = fragCoord.xy/iResolution.xy;
    float a = iTime * 0.5; //speed
    float b = 8.0; //lobe depth
    float n = 2.5; //number of lobes
    float x = p.x;
    float y = p.y;
    float pi = 3.14159;
    float h = (1.0 - (x * x * x)) * ((cos(pi * 2.0 * n * (x - a)) / b) + (1.0 - (1.0 / b)));
    //abs distance from func   
    float e = abs(y - 0.5);
    float d = abs(e - h);
    float t = clamp(((d / e) - 1.0), 0.0, 1.8);
    float w = clamp((0.75 * h + 0.75) * 3.0 * abs((0.45 * -(1.0 - x)) + e), 0.15, 3.0);
    t *= w;

    vec3 color = vec3(1.0, 0.5, 0.0);

    // Output to screen
    fragColor = vec4( * t, 1.0);

Suggestions / Add expired/rejected scan missions to fleet log
« on: May 29, 2021, 09:01:02 PM »
Fairly simple suggestion; when 'scan research station/orbital habitat/minor weapons cache etc. etc.' missions expire or are abandoned they are lost and the player has to make a note of their location. It would be logical for them to be added to the fleet log when this happens.

One of the problems with modded ship design is that energy weapons require a lot of intelligent design to be viable when compared to ballistics, which are generally accepted to be baseline stronger weapons because vanilla only has to balance them around the three ship design archetypes and their mounting options. My suggestion is to rebalance vanilla ballistic weapon ranges until they are as strong as energy weapons as a baseline.

The kicker is to create a MutableStatsAPI attached to the weapons on mounts baked into a ship. If vanilla ballistic mounts had an e.g. +25% range bonus on attached weapons by default then the present balance would be conserved, but it would create more options for modded ship designs that utilise many more hybrid/synergy mounts than vanilla and want to offer a more balanced choice between mounting viable energy and ballistic weapons, based on the unique characteristics of a particular weapon mount. This could include modifiers from the vanilla ship mutable stats like energy/ballistic weapon flux, RoF, recoil etc. etc.

There are a number of solutions to managing multiple mount types with different stat modifications.

Number one is creating a mount_archetypes format file, like hull_styles.

Then, a *.ship file might look like this
    "bounds": [
    ... #and so on

    "weaponSlots": [
            "angle": 30,
            "arc": 180,
            "id": "WS 001",
            "locations": [
            "mount": "TURRET",
            "size": "SMALL",
            "type": "BALLISTIC"
            "angle": -30,
            "arc": 180,
            "id": "WS 002",
            "locations": [
            "mount": "TURRET",
            "size": "SMALL",
            "type": "BALLISTIC"
        ... #etc etc

Finally, the script MYMODPREFIX_StandardBallisticRangeMod might be something like

public class MYMODPREFIX_StandardBallisticRangeMod extends BaseMountArchetypeMod {
    protected static final float BALLISTIC_MAX_RANGE_PERCENT = 25f;
    public void advanceInCombat(float amount, ShipAPI ship, WeaponAPI weapon, String id) {
        float mod = BALLISTIC_MAX_RANGE_PERCENT * ship.getFluxTracker().getFluxLevel();

        weapon.getMutableStatsAPI().getBallisticWeaponRangeMod().modifyPercent(id, mod); //unique mount weapon range goes from +0% to +25% as ship flux level increases

This would also open many opportunities for modders that wish to modify weapon abilities individually, especially for unique built-in weapons, that are currently impossible. Weapon mutablestat effects like range could stack additively with ship mutablestat effects from hullmods and the like.

Pages: [1] 2