Inspiration

I like word games and I thought it would be interesting to do a battle style game using battleships as inspiration. SoI tried to see what I could do. SoI named the game Word Loot.

A strategic word battle game built for Reddit using Three.js and Devvit. Command your own ship in a beautiful 3D ocean world, position magical crystals containing hidden words, and engage in tactical battles with AI ships by solving anagram puzzles to claim their treasures. Word Loot is an innovative strategy game that combines tactical ship combat with word puzzle mechanics. Players navigate a stunning 3D tropical ocean world, commanding their own pirate ship while engaging in battles that require both strategic thinking and word-solving skills. The game features a unique "Battleship meets word puzzles" gameplay where you attack enemy ships by solving anagram puzzles to destroy their crystals and claim their treasure. Well that was the idea but it got a bit complicated.

What it does

  • Mobile: Circular joystick in bottom-left corner for ship movement with drag-to-move mechanics
  • Desktop: WASD or Arrow keys for ship movement, mouse for camera control and zoom
  • Combat: Click on enemy ships (highlighted in green when in range) to initiate battle, click grid cells to attack
  • Puzzles: Click letters to place them in answer slots, click filled slots to remove letters When you first launch Word Loot, you'll see a beautiful main menu overlaid on the 3D ocean world with:

  • Settings Button** (top-left): Configure sound effects, background music, vibration, and access the "Sink Ship & Reset" option to completely restart your progress

  • Coins Display** (top-right): Shows your current treasure count earned from successful battles and achievements (starts at 0 coins for new players)

  • Achievements Panel (top-right): View your unlocked accomplishments with detailed descriptions and coin rewards: (To be finished)

    • First Strike (⚔️) - Hit your first enemy ship (+50 )
    • Ship Destroyer (💀) - Sink 5 enemy ships (+100 )
    • Word Master () - Solve 10 anagrams correctly (+200 )
    • Treasure Hunter (🏴‍☠️) - Find 3 treasure chests (+150 )
    • Daily Sailor - Claim daily reward 7 times (+300 )
  • Daily Treasure Chest** (top-right): Claim daily coin bonuses (+10 ) with animated chest opening and reward display

  • Active Ships Counter (bottom-right): Real-time display of active ships in the world

  • Welcome Panel (centre): Personalised greeting with dynamic action button that changes based on your game state:

    • New players: "Position Loot"
    • Returning players: "Set Sail"

Set Up Your Crystal Defence:

For New Players - Crystal Positioning Phase:

  1. Crystal Selection Interface: The setup UI displays 5 magical crystals with detailed information:
    • Ruby Crystal (4 letters) - 40 coins - Beginner difficulty with simple nautical words
    • Sapphire Crystal (5 letters) - 50 coins - Moderate difficulty with common sea terms
    • Emerald Crystal (6 letters) - 60 coins - Challenging words like "PIRATE" and "ISLAND"
    • Diamond Crystal (7 letters) - 70 coins - Advanced words like "CAPTAIN" and "COMPASS"
    • Amethyst Crystal (8 letters) - 80 coins - Expert level with complex terms like "TREASURE" and Stop at the docks to repair your boat (To be finished) ## How we built it Three.js

Challenges we ran into

I hade problems saving the data to Redis. Also with getting the word part to open and appear as I wanted to. There's a few bugs to iron out here. I have to go and learn a bit more how to connect with the server.

Accomplishments that we're proud of

I think I started something really fun and looking forward to polishing the code especially i think the UI looks ok for now. This is a work in progress.

What we learned

I learned a bit more about Devvit web , three.js

What's next for Untitled

I would love to implement the parts that are not working theres a quite a few things to fix but I thought I would submit anyway because I spent a lot of time on it especially the UI and thinking about the idea. Also i welcome feedback. Thanks!

Built With

Share this project:

Updates