Inspiration
I am a licensed ship captain and marine pilot with hands-on experience in the İstanbul Strait and İstanbul’s ports. Ship-handling simulators are essential for training, but their behaviour does not always match what experienced mariners observe on real ships. Providing detailed operational feedback to developers and repeating that process until the model feels right is rarely practical.
I started this project with no background in software development. My goal was to find out whether a maritime professional could directly shape and improve a simulator with AI-assisted development.
What it does
Ship Handling Simulator is an accessible browser-based 2D simulator for maritime pilot training, pre-manoeuvre visualisation and professional case review.
It supports berthing, unberthing and free manoeuvre scenarios with configurable vessels, engines, rudders, thrusters, tugboats, wind, current and environmental conditions. Its prediction system and dedicated Docking view display the expected vessel track together with separate bow, stern and overall motion vectors.
The simulator includes spatially varying current sampled at multiple points along the hull, depth-and-draft-based shallow-water effects, bank effects calculated from actual quay and breakwater geometry, and a heading autopilot that controls both rudder angle and rate of turn.
How I built it
I began developing the project with AI tools, including Claude. As the simulator became more complex, I moved the active development workflow into Codex with GPT-5.6.
The spatially varying current model, bank-effect model, heading autopilot, Docking view and complete English interface translation were all developed during this phase. Codex enabled GPT-5.6 to work directly inside the codebase: inspecting the existing implementation, modifying the physics and interface, creating repeatable tests and checking that new features did not break established behaviour.
I supplied the operational knowledge and evaluated every result as a practising marine pilot. GPT-5.6 helped convert observations such as “the current should not move the whole ship uniformly” and “the stern should be drawn toward the quay” into testable models and working code.
Challenges
The main challenge was turning practical ship-handling experience into deterministic software behaviour. Environmental forces must influence drift and heading without producing unstable or exaggerated motion, while effects such as shallow water and bank interaction must appear only under the correct conditions.
The project therefore required repeated comparison between professional judgement, model behaviour and automated regression tests.
Impact and future development
Professional ship-handling simulators can cost hundreds of thousands or even millions of dollars. This project does not attempt to replace certified full-mission simulators, but it demonstrates a more accessible and adaptable way to support training and pre-manoeuvre discussion.
It represents the expert-in-the-loop: AI does not replace domain expertise; it gives experts the power to build what they could previously only describe.
The next stage is to expand vessel and port models and validate the simulator against additional real-world manoeuvring observations.
Built With
- claude
- css3
- gpt-5.6
- html5
- javascript
- openai-codex
- vercel
Log in or sign up for Devpost to join the conversation.