Skip to content

Software Requirements Specification Document (SRS)

Dorukhan YILDIZ edited this page Dec 6, 2024 · 13 revisions

Rule and Munus Software Requirements Specification Document

1. Introduction

1.1 Purpose of This Document

The aim of this document is to comprehensively outline the functional and non-functional requirements of the game Rule and Munus. This document is intended to serve as a guiding framework for the development team, ensuring a clear understanding of the game's objectives, mechanics, and technical specifications. Its primary purpose is to guide the development process by providing a detailed roadmap, ensuring all functionalities align with the intended design and user expectations.

1.2 Problem Definition

Modern games often struggle to offer a seamless blend of diverse gameplay elements such as combat, resource management, strategy, and AI integration, leading to limited replayability and predictable experiences. Rule and Munus addresses this gap by combining dynamic turn-based combat, and a human-like AI opponent that evolves alongside the player. The game's unique dice-based mechanics and the integration of inspired features from acclaimed titles create an engaging, unpredictable gaming experience. The primary problem it seeks to solve is the lack of truly adaptive AI that mirrors player actions and evolves in complexity, providing a competitive yet balanced challenge.

1.3 Scope of This Project

Rule and Munus is a single-player, turn-based strategy game blending tactical RPG and roguelike elements. Set in a richly detailed isometric world, the game features two primary phases:

  1. Peace Phase: Players manage a town by constructing and upgrading buildings, crafting/selling/buying items, and developing their character through stat allocation.
  2. War Phase: Players roll dice to gather materials, engage in combat, or participate in gladiator tournaments. Combat is strategic, turn-based, and influenced by dice rolls.

The game’s highlight is its dynamic AI opponent that grows alongside the player, the King of the Gladiators, which shares player actions, grows over time, and serves as the ultimate opponent. The project boundaries include:

  • Platform: PC
  • Language: C#
  • Graphics: 2D isometric view
  • Target audience: Fans of tactical RPGs and turn-based strategy games

By combining resource management, dice mechanics, and adaptive AI, the project aims to deliver a unique, replayable experience that challenges players’ tactical and strategic skills.

1.4 Glossary

Term Description
AI (Artificial Intelligence) A computational system designed to mimic human-like decision-making. In this game, the King of the Gladiators is controlled by a human-like AI that adapts to player actions.
Action Points (AP) A resource consumed by the player or AI during combat to perform actions such as attacking, defending, or using skills.
Colosseum A game mode where players participate in gladiator tournaments, facing opponents in staged battles to progress in the story and earn rewards.
Combat Interface A tactical grid system where players engage in turn-based combat with opponents.
Dice Mechanics A feature where dice rolls determine the success of actions, quality of crafted items, and outcomes of events. Examples include d20 for material gathering and d100 for item crafting quality.
Encounter A random event during the War Phase, where the player faces an enemy or gathers materials based on dice roll outcomes.
Heuristic-based Decision-making A method used by the game’s AI to make decisions based on simplified rules rather than complex calculations, balancing performance and adaptability.
Isometric View A visual perspective used in the game to present the town and combat scenes, offering a pseudo-3D appearance on a 2D plane.
Peace Phase The gameplay phase focused on town management, crafting, and character development.
Roguelike A sub-genre of games characterized by procedurally generated challenges, randomness, and a high degree of replayability.
Stat Points Points allocated by players to improve their character’s attributes, such as Strength, Dexterity, or Intelligence, enhancing performance in combat and other activities.
Turn-based Combat A combat system where players and opponents take turns performing actions based on available resources like action points.
War Phase The gameplay phase where players gather materials, engage in combat, or participate in the Colosseum.
Unity Engine A game development platform used for creating the game, handling graphics rendering, physics, and AI behaviors.
User Interface (UI) The visual and interactive components of the game that allow players to perform actions, manage inventory, and navigate game menus.
XP (Experience Points) Points gained by the player through actions like combat and crafting, used to level up the character.

1.5 References

Figure 2

1.6 Overview

This document is structured to provide a clear understanding of the game, user profiles, system requirements, functional features, user interface designs, and UML models. Starts with an explanation and continues with the overwiew, system requirements, UI designs and use case descriptions.

2. Overall Description

2.1 Product Perspective

Rule and Munus operates as a standalone game, drawing inspiration from popular titles while integrating unique gameplay mechanics and a sophisticated AI. The game’s context is influenced by the following elements:

  • Standalone Operation: The game is independent and does not rely on external systems or services to function. Players interact with the game through an intuitive interface on a PC, with no dependencies on third-party platforms for gameplay.
  • Relation to Existing Systems:
    • Inspired by Swords and Sandals, it adopts similar combat mechanics while introducing new strategic layers in town-building and AI-driven opponent interactions.
    • Borrowing from Dungeons and Dragons, it uses dice-based mechanics for randomness and decision-making, adding depth to gameplay.
    • The turn-based structure of Sid Meier's Civilization VI is adapted to combine strategic peace and war phases.
    • The town development and crafting mechanics are influenced by Loop Hero, tailored to create a personalized player progression.
  • Innovative Features: The game introduces a human-like AI opponent, the King of the Gladiators, which evolves dynamically based on player actions. This AI mirrors player strategies, grows in strength, and serves as a persistent challenge throughout the game, providing a unique and adaptive gameplay experience.
  • Gameplay Integration: The game seamlessly combines resource management, character progression, and turn-based combat, creating a balanced and engaging experience. Players navigate between Peace and War Phases, making strategic decisions that directly influence their progression and success. This perspective establishes Rule and Munus as a unique entry in the turn-based strategy and tactical RPG genres, innovating upon existing systems while addressing gaps in adaptive AI and replayability.

2.1.1 Hardware Interfaces

Users can play the game with a standard PC device that runs a compatible operating system. Necessary hardware requirements are.

  1. Game Console: User can interact with the system by corresponding buttons of Game Console to take actions.
  2. Keyboard: User can interact with the system by corresponding keys such as selecting an action from the action bar in combat by numbers.
  3. Mouse: User can interact with the system by clicking an action from the action bar or a building to see corresponding actions.

2.1.2 Software Interfaces

Asset management is done by using operating system calls. Unity is necessary to develop functional requirements. (Boşluk)

2.1.3 User Interfaces

Key interface components include:

  • Main Menu: Provides access to play, settings, and credits buttons.
  • Town Interface: A detailed isometric view of the town, allowing players to interact with buildings to construct, upgrade and interact with the corresponding NPC.
  • Character Menu: Displays character stats, inventory and equipped items.
  • Combat Interface: A tactical grid system for turn-based combat, featuring action points, dice roll results, and combat options like attack, defend, use skill, and flee.
  • War Phase Interface: Allow user to choose either gather or go to coliseum. The interface is tailored for mouse-and-keyboard or game console inputs, offering smooth navigation and control.

2.2 Product Functions

Key Features and Functions of Rule and Munus:

  1. Peace Phase:
    • Town-building and upgrading.
    • Crafting items using collected materials.
    • Buying and selling items from the market.
    • Stat point allocation for character progression.
  2. War Phase:
    • Material gathering via dice rolls and turn-based events.
    • Combat mechanics with options to attack, flee, use skill, or defend.
    • Participation in gladiator tournaments to earn rewards and progress in the story.
  3. Human-like AI:
    • Dynamic evolution sharing player actions.
    • The AI-controlled main opponent (King of the Gladiators) who adapts strategically and grows in strength over time.
  4. Dynamic Gameplay Elements:
    • Randomized events and loot via dice rolls.
    • Strategic decision-making influences story progression and AI behavior.

2.3 User Characteristics

  • Primary Audience:
    • Gamers interested in turn-based strategy, tactical RPGs, and rouge-like games.
  • Goals:
    • To experience strategic decision-making in improving character and combat actions.
    • To challenge a dynamic AI opponent.
    • To progress through a basic story while improving their character.
  • Skills:
    • Basic familiarity with PC gaming controls (keyboard and mouse or game console).

2.4 Assumptions and Dependencies

  • Assumptions:
    • Players will have access to PCs meeting at least the minimum hardware requirements.
    • No external server or online connection will be required for core gameplay.
  • Dependencies:
    • Development relies on the Unity Engine and C# programming language for implementation.
    • Graphics and UI assets will depend on third-party design tools like Adobe Photoshop or Blender.
    • AI components will leverage machine learning frameworks integrated into Unity.

3. Specific Requirements

3.1 External Interface Requirements

Input:

  • Player inputs using mouse and keyboard for selecting actions, managing inventory, and interacting with game menus.
  • Dice roll mechanics triggered via player commands, with visual feedback displayed on the screen. Output:
  • Visual representation of the town, character, and combat scenarios in an isometric view.
  • Turn-based feedback on dice rolls, actions, and AI decisions.
  • Notification system displaying resource changes, loot collected, and combat outcomes. Behavior:
  • Seamless transition between Peace and War Phases based on player actions.
  • AI dynamically adapting to player strategies in combat and town development.
  • Consistent feedback for player decisions, ensuring clarity and engagement.

3.2 Functional Requirements

3.2.1 Peace and War Phase

The game progresses through the Peace and War Phases, each offering distinct gameplay experiences. During the Peace Phase, players manage their town, organize their inventory, check materials, and construct new buildings. For example, building the Blacksmith opens up the option to craft items, and players can also spend stat points as they level up to enhance their character’s attributes. The War Phase shifts the focus to action, where players can gather materials, engage in combat, or participate in gladiator tournaments. The transition between these phases ensures a balance between strategic preparation and active gameplay, allowing players to refine their strategies in the Peace Phase before diving into the challenges of the War Phase.

3.2.2 Town Management

Players can build and upgrade buildings throughout the game. Initially, basic buildings such as the Market are constructed to facilitate trade and basic operations. As buildings are upgraded, more advanced features become available. For example, upgrading the Blacksmith and Wizard buildings allows the player to craft higher-quality items, increasing the chances of obtaining rare or powerful gear. Upgraded buildings also enhance the materials that can be gathered and the types of actions that can be performed, enabling more efficient and powerful progression in the game. Thus, as buildings level up, players gain access to higher-quality items and resources, providing them with stronger advantages in their journey.

3.2.3 NPC Interactions

Players, through the process of building and upgrading structures in their town, gain the opportunity to interact with NPCs for trade and crafting. The marketplace is already established, allowing players to trade basic items and materials from the start. As the town develops and buildings are upgraded, new NPCs emerge, offering more valuable and powerful items for sale. These interactions provide players with the opportunity to gather resources. Similarly, crafting NPCs like the Blacksmith allow players to create new items from the materials they gather. While the crafting process initially focuses on simple items, upgrading town buildings unlocks the ability to craft more advanced and powerful items. The quality of crafted items is determined by a d100 roll, which increases the chances of creating rare, powerful items. NPCs guide players with crafting recipes and required materials. Building and upgrading structures empowers players to take a stronger role in managing the town. Interacting with NPCs enables trade, crafting, and strategic decision-making. This process provides players with opportunities to strengthen themselves and generate resources.

3.2.4 Character Attribute Points

Character attribute points directly influence success and performance in combat and other game aspects. Strength increases the damage dealt with equipped items and is essential for all actions that require physical power. Intelligence boosts the character's maximum mana and enhances the effectiveness of spells, making magic abilities more potent. Constitution increases the character's health points, improving survival chances. Dexterity reduces the damage taken while defending and enhances mobility, making the character more agile. Charisma plays a crucial role in trading, allowing the player to buy items at lower prices and sell them at a higher value. These attributes can be strategically allocated to fit different playstyles and provide advantages in various challenges throughout the game.

3.2.5 AI Behaviours

AI behaviors are shaped by the game structure and the player's interactions. The AI adapts to the player's chosen role and the progression of the game. It analyzes the player's movements and preferences to devise strategies. In combat, the AI analyzes the player's defense tactics and creates counter-attack plans. Additionally, the AI's actions and decisions change according to different stages of the game, requiring it to adjust to both peace and combat scenarios. The AI responds according to the player's role and continuously improves these responses based on game dynamics. This ensures that the game experience remains dynamic by constantly presenting new challenges to the player.

3.2.6 Gathering and Loot

The type and number of enemies the player will encounter are randomly determined during the Gathering phase using a dice mechanism. This system influences the difficulty level and variety of enemies. After the battle, the player obtains loot through the Loot system. The type and amount of loot are determined based on the outcome of the battle and are added to the player's inventory.

3.2.7 Roll a Dice

The gathering and looting processes are carried out using a dice mechanism. Dice rolls determine the number and type of enemies, as well as the success rate of attack and defense actions during combat. This feature enhances the game's dynamism, preventing it from becoming monotonous and providing a more engaging experience for players.

3.2.8 Combat Mechanics

If the player engages in turn-based combat, the battle scene is loaded. Within the battle scene, the player has several tactical options: they can attack using an equipped weapon, utilize scrolls or mana to perform powerful skills, reposition by moving left or right, choose to wait and observe the enemy's next move, or adopt a defensive stance to reduce incoming damage. These diverse combat choices provide strategic depth, allowing players to adapt their approach based on the situation and the enemy's behavior.

3.2.9 Go to Coliseum

The player is presented with three options in the Coliseum: Encounter, Gladiator, or King. By selecting one of these options, the player enters the arena and engages in a battle based on the chosen difficulty level. Each option offers a unique type of challenge, encouraging the player to make strategic decisions.

3.4 Performance Requirements

To ensure a smooth and engaging experience for players, the following performance metrics will be prioritized:

  1. Response Time:
  • User Input to Action Execution: Less than 100 milliseconds for town management actions, inventory management, and combat commands.
  • Dice Roll Feedback: Results displayed within 1 second of the roll being triggered.
  • Phase Transitions: Peace-to-War or War-to-Peace transitions should be completed in under 2 seconds.
  1. Throughput:
  • Support for up to 100 active AI decision processes per second to simulate the King of the Gladiators’ human-like behavior.
  1. Scalability:
  • The game must maintain consistent performance on both minimum and recommended hardware specifications.
  • Towns with up to 10 buildings, inventories holding 100 items, and combat involving up to 2 opponents simultaneously should function without framerate drops below 60 FPS on recommended specifications and 30 FPS on minimum specifications. The minimum and recommended hardware specifications are as follows:
  • Minimum Requirements:
    • Processor: Dual-core CPU (2.0 GHz or faster)
    • RAM: 4 GB
    • Graphics Card: Integrated GPU supporting DirectX 10 or OpenGL 3.3
    • Storage: 2 GB free space
    • Operating System: Windows 10 or newer

These specifications are selected to balance performance and accessibility, ensuring smooth gameplay and high-quality visuals for most players.

3.5 Design Constraints

  1. Regulatory Compliance:
    • The game must adhere to copyright laws and licensing agreements, particularly concerning inspirations drawn from other games and systems.
    • The game must comply with data protection laws, ensuring that any saved game files or user profiles are stored securely and locally.
  2. Environmental Constraints:
    • The game is designed exclusively for PC platforms and is not intended to run on mobile devices or consoles.
    • Offline operation is a requirement, with no dependency on internet connectivity.
  3. Technical Limitations:
    • The AI system relies on heuristic-based decision-making rather than advanced neural networks to reduce computational complexity and meet performance requirements on minimum hardware.
    • Graphics are limited to 2D isometric rendering to ensure compatibility with lower-end systems while maintaining visual clarity and style.
    • The dice mechanics and their associated randomization functions must be lightweight, deterministic, and optimized for fast execution without impacting other game systems.
  4. Development Constraints:
    • The game is developed in C# using the Unity Engine, restricting certain features to those supported by the engine.
    • A fixed development timeline requires prioritization of core gameplay mechanics over extended features such as multiplayer or extensive cutscenes.

3.6 Software System Attributes

3.6.1 Reliability

  • The system must be able to handle all expected inputs and should response without a crash. If any fail occurs, mean time to repair should be between 1 to 24 hours.
  • Save and load functionality must be reliable, with no data corruption under typical use cases.
  • Key gameplay systems (e.g., combat, crafting, AI behavior) must perform as intended under all defined scenarios, with error handling for unexpected inputs or states.

3.6.2 Availability

  • The game will be available offline and should function without requiring an internet connection.
  • It should be ready for use immediately after installation, with no dependency on external services or updates.

3.6.3 Security

  • Access to debug tools or administrative features must be restricted to developers during production builds.

3.6.4 Maintainability

  • The codebase will follow best practices in modularity, with clear separation between gameplay logic, AI routines, and UI components.
  • Documentation will be provided for each major system to facilitate updates and bug fixes.
  • Error logs will be generated for crashes or abnormal behavior to simplify troubleshooting.

3.6.5 Portability

  • The game is designed for the Windows operating system. However, the use of the Unity Engine and C# ensures future compatibility with macOS or Linux, should there be demand for additional platforms.
  • System configurations such as resolutions and graphical settings can be adjusted to accommodate various hardware capabilities.

3.6.6 Usability

  • User interface will guide players through complex mechanics such as crafting, combat, and town management.
  • Tutorials will introduce core features and dice mechanics in a step-by-step manner to minimize the learning curve.
  • Visual and auditory feedback will confirm player actions, ensuring clarity in outcomes like dice rolls, combat results, and crafting success.

3.6.7 Scalability

  • The game will support expansions, such as additional skills, AI behaviors, or new item sets, without significant reworking of core systems.
  • AI computation scales proportionally to player actions to ensure a consistent challenge without impacting performance.

3.7 Safety Requirements

Rule and Munus does not involve any real-world physical threats but must address safety-critical software aspects to protect the user’s experience:

  • Data Safety:
    • Backup mechanisms will ensure that save files are not corrupted, even during unexpected power loss or system failure.
    • Autosave functionality will operate at key gameplay moments, preventing significant progress loss.
  • System Integrity:
    • The game will not perform unauthorized operations on the player’s device, ensuring no interference with other applications or system files.
    • Resource management in the game engine will prevent memory leaks or overuse of system resources, ensuring smooth operation without crashes.
  • Player Well-being:
    • The game will include options to adjust visual settings to reduce strain, such as brightness control and a mode for colorblind accessibility.
    • The random nature of dice rolls, and AI evolution will be balanced to ensure fairness.

4. UML and Use Case Descriptions

4.1 Use Case Diagram

image

Figure 1: Use case diagram.

Clone this wiki locally