Skip to content
Snippets Groups Projects
  1. Apr 23, 2024
  2. Apr 03, 2024
    • Florian Schröder's avatar
      Add type hints and docstrings across multiple modules · 5c100dd0
      Florian Schröder authored
      Added type hints and docstrings throughout the project, notably in the effects, orders, study server, and game server modules. These additions provide better understanding and ease in navigating through the codebase. Minor code reorganization and syntax optimization were also performed.
      5c100dd0
  3. Mar 26, 2024
  4. Mar 13, 2024
    • Florian Schröder's avatar
      Update methods and hooks in cooperative_cuisine · 4aecc23e
      Florian Schröder authored
      The main changes include enhancing methods in cooperative_cuisine/hooks.py, cooperative_cuisine/counters.py, and cooperative_cuisine/environment.py, and updating hooks. These changes greatly improve the handling of hooks and calls, provide explicit arguments for actions, and add more comprehensive documentation. This leads to better logging and debugging, higher code readability, and improved overall code structure in the cooperative_cuisine backend.
      4aecc23e
    • Fabian Heinrich's avatar
      3fc8e4e2
  5. Mar 10, 2024
    • Florian Schröder's avatar
      Update comparisons and variable types, add tests · 14a081cc
      Florian Schröder authored
      This commit modifies comparison operators for timers to be less than or equal in various scripts. It also changes variable types explicitly in scores.py and adds several new tests for functionalities like effects, scores, information messages, trashing function etc. Additional updates include changes in values for certain default arguments in command line parser for generating images in the script for 2D visualization.
      14a081cc
  6. Mar 09, 2024
    • Florian Schröder's avatar
      Add and optimize type hints, refactor functions, improve readability · 0ddb9e04
      Florian Schröder authored
      Various changes have been made in the codebase to improve readability and maintainability. Type hints have been added to the functions and variables for better understanding of the datatypes. Refactoring of some code segments has also been done to make the code more concise and readable. The 'EffectType', 'ItemType' enumerations have been enriched with docstrings for better understanding of the enums. Certain classes have been updated to better follow the single responsibility principle.
      0ddb9e04
    • Florian Schröder's avatar
      Refactor docstrings for consistency and update environment name · 2bd77a93
      Florian Schröder authored
      Docstrings across classes and functions in different modules have been adjusted for consistency, specifically in how Return and Raise explanations are formatted. This makes the code more readable and uniform. Additionally, the environment name in 'environment.py' has been updated from "overcooked_sim" to "cooperative_cuisine_1".
      2bd77a93
  7. Mar 08, 2024
  8. Mar 07, 2024
    • Fabian Heinrich's avatar
    • Florian Schröder's avatar
      Refactor code for clarity and type hinting · 97539d86
      Florian Schröder authored
      The code has been refactored to clarify the functionality of various components and improve type hinting. Documentation for methods has been expanded. The return types of to_dict methods in several classes have been changed to return CounterState. The Counter class now correctly handles cases where an Item or Iterable[Item] is occupied. An unnecessary Boolean attribute, all_players_ready, has been commented out. Manual normalization of orientation vectors has been introduced.
      97539d86
  9. Mar 04, 2024
    • Florian Schröder's avatar
      Refactor argument naming and method signatures · eccd9c34
      Florian Schröder authored
      Modified url_and_port_arguments to follow cli args standards in cooperative_cuisine/utils.py, changing '-study' to '-s' and '-game' to '-g'. Adjusted the placement of 'player' argument in the methods in cooperative_cuisine/counters.py. Also, refactored the method _do_single_tool_interaction to be a static method.
      eccd9c34
  10. Feb 29, 2024
    • Florian Schröder's avatar
      Rename module 'game_items' to 'items' · e65743a5
      Florian Schröder authored
      The module 'game_items' was renamed to 'items'. Every reference to this module across different source code files was consequently updated to reflect this change.
      e65743a5
    • Florian Schröder's avatar
      Refactor EffectManager into effects module · 4d93be01
      Florian Schröder authored
      The EffectManager class along with related effects have been moved to a newly created effects.py module. Also, instead of importing from cooperative_cuisine.effect_manager, the rest of the code now imports from cooperative_cuisine.effects. This is mainly to improve the project structure and to clarify the code organization, and avoid circular import issues.
      4d93be01
  11. Feb 28, 2024
    • Florian Schröder's avatar
      Update meal configurations and add player context to counters · e60d58b0
      Florian Schröder authored
      Meal configurations in the level 1 configuration file are updated, swapping out the previous meals with new ones. Player name has been added as a parameter to the pick_up and drop_off methods in player.py and counters.py. This allows for better tracking of the actions of individual players, which can be useful in cooperative environments where player accountability is imperative. Additionally, served meals now also log the serving player's name, providing additional context during gameplay and post-game analysis.
      e60d58b0
    • Florian Schröder's avatar
      Rename project from overcooked_simulator to cooperative_cuisine · 242c9860
      Florian Schröder authored
      All instances of 'overcooked_simulator' have been replaced with 'cooperative_cuisine'. This includes changes in file paths, imports, and script names. The necessary adjustments to reflect this rename have also been made in the documentation, setup files, test scripts, and CI/CD configuration.
      242c9860
    • Florian Schröder's avatar
      Update drop-off conditions in counters.py · 93d10ed5
      Florian Schröder authored
      The code for the drop-off condition within the Overcooked simulator's counters module has been updated. The updated condition now checks not only if the item can be combined or matches the dispensing item's name but also checks if the undo dispenser pickup flag is true.
      93d10ed5
    • Florian Schröder's avatar
      Add option to undo dispenser pickup in Overcooked simulator · 076a36a5
      Florian Schröder authored
      The commit introduces an option that allows dispensers in the Overcooked simulator to undo pickups of items in case of errors. This new setting, `undo_dispenser_pickup`, is now included in the `game` section of the environment configuration. Both the counter factory and dispenser have been updated to accommodate these changes.
      076a36a5
  12. Feb 21, 2024
  13. Feb 13, 2024
  14. Feb 09, 2024
    • Florian Schröder's avatar
      Add drop-off interaction with cooking equipment · b83ba205
      Florian Schröder authored
      The code now includes a new hook called 'drop_off_on_cooking_equipment'. This hook is used to track and score instances of players dropping off items on the cooking equipment in the Overcooked game simulator. This enhancement will allow for more detailed game simulations and scoring capabilities.
      b83ba205
  15. Feb 08, 2024
    • Florian Schröder's avatar
      Refactor scoring system and order management · 3c1fda71
      Florian Schröder authored
      The scoring system and order management have been significantly updated. The score calculation has been moved out from 'OrderManager' to external 'ScoreViaHooks' class which works via hooks. The order management updates include separating scoring from orders and removing unused functions. Changes in the configuration file and other related files updated to accommodate these modifications.
      3c1fda71
    • fheinrich's avatar
      Plates can be returned clean, Configurable. · 6500d705
      fheinrich authored
      6500d705
  16. Feb 06, 2024
  17. Feb 04, 2024
    • Florian Schröder's avatar
      Implement additional logging and recording features · 4636abf5
      Florian Schröder authored
      This update introduces comprehensive hook management, improved environment setup functions, and a new class for logging and recording simulations. The enhanced hook management ensures better callback registration and tracing of specific simulation events. Extra setup functions allow more flexibility in setting parameters from the environment config. The new logging and recording class makes it easier to capture simulation data in a structured format for analysis. Various minor fixes and code refactoring are also included.
      4636abf5
  18. Feb 03, 2024
    • Florian Schröder's avatar
      Implement game effects and tools framework · c7899968
      Florian Schröder authored
      Added the definition and interactions for game effects and tools. The effect type was introduced to influence the player's interactive abilities or alter item's attributes. The tool type extends the player's interactive abilities. It also includes the part related to fire and fire extinguisher for more realistic simulation.
      c7899968
    • Florian Schröder's avatar
      Add random instance to make randomness controllable · 9fae6bad
      Florian Schröder authored
      The random module is replaced with random instance across multiple classes within 'overcooked_simulator' to make the randomness in the Overcooked simulator controllable. The 'random' instance is initialised with a seed in 'overcooked_environment' and then passed to the classes that require randomness. This improves reproducibility of experiments, as the randomness can be controlled by the seed value.
      9fae6bad
  19. Feb 02, 2024
    • Florian Schröder's avatar
      Implement hooks for tracking game events · 6b2b8c76
      Florian Schröder authored
      Added a Hooks class to monitor events related to player actions, item interactions, and state changes in the game environment. A hook triggers a corresponding event when a specific action takes place, such as a player picking up an item or a game state changing. This feature will make debugging easier and provide valuable insights during gameplay.
      6b2b8c76
  20. Jan 31, 2024
    • Florian Schröder's avatar
      Refactor code for better readability and clarity · fa5595ea
      Florian Schröder authored
      The changes include improving the wording in readme files, from 'Python 3.10 or higher' to 'Python 3
      fa5595ea
    • Florian Schröder's avatar
      Update documentation for layout and equipment configuration · 29223014
      Florian Schröder authored
      Documentation has been updated to provide better clarity on the layout and equipment configuration. The README file now includes information on defining counter mappings in the Environment config. The code examples in comments within the counters.py file have also been reformatted and updated, specifically those related to defining equipment types and dispenser characters. The additional change includes an expanded section in the __init__.py file on environment and item configuration.
      29223014
    • Florian Schröder's avatar
      Refactor code and update documentation · 31497c68
      Florian Schröder authored
      The code changes include renaming the 'category' field from "Cooking Equipment" to "ItemCookingEquipment" in sample_state.json. The documentation has also been updated with more detailed explanations on how the system works, including how to install and use it. A few function signatures were changed and additional explanation comments were included in the counters.py and utils.py files for better code clarity.
      31497c68
    • Florian Schröder's avatar
      Add docstrings and type hinting · ff409005
      Florian Schröder authored
      The updates include adding docstrings and type hinting to several classes and methods in multiple Python files. This commit also includes fixes for inconsistent code formatting and minor bugs. The docstrings provide essential details about the classes and methods, improving readability and understanding for other developers. Furthermore, the added type hinting will enable better IDE assistance, static analysis, and clarity on expected input and output types. Lastly, the code formatting fixes and bug fixes enhance the overall code quality and maintainability.
      ff409005
  21. Jan 29, 2024
  22. Jan 27, 2024
    • Florian Schröder's avatar
      Add penalty for trashing items in Overcooked simulator · b600b39e
      Florian Schröder authored
      This update introduces a penalty computation for items that the player puts into the trash in the Overcooked simulator. A new function has been added onto the Order class to calculate this penalty, and the Trashcan class has been updated to use this new function whenever an item is dropped off. This change helps to further emulate real gameplay mechanics.
      b600b39e
    • Florian Schröder's avatar
      Refactor counter setup and update various classes · d9ddc417
      Florian Schröder authored
      The `overcooked_environment.py` file has been significantly refactored to streamline handling of counter setup. Post counter setup responsibilities have been shifted to the `CounterFactory` class. A utility function, `get_closest`, has been introduced in `utils.py` to determine the closest counter and is used in multiple classes. Minor updates are also made across several other classes for optimization and clarity. The 'other' score in `environment_config.yaml` has been changed from 0 to 20.
      d9ddc417
  23. Jan 26, 2024
    • Florian Schröder's avatar
      Refactor simulator environment and add counter factory · 3606ecfd
      Florian Schröder authored
      This commit simplifies the overcooked environment by refactoring the way counters are created and managed. A new CounterFactory class is introduced, offloading logic from the environment class. In addition, the symbol to character mapping and other environment-related configurations are moved to a separate YAML file. The .gitignore file is also updated to ignore the 'playground' directory. Making these changes enhances code maintainability and readability.
      3606ecfd
    • Florian Schröder's avatar
      Add CookingCounter progress and raise exception for undefined counter types · 8ede781a
      Florian Schröder authored
      The CookingCounter is now included in the list of counters for which we calculate progress. Additionally, if a counter type is not defined in the configuration, a ValueError will be raised. Unnecessary imports were also removed from 'overcooked_gui.py', and a 'to_dict' method was added in 'counters.py'. Fixing errors from merge.
      8ede781a
  24. Jan 25, 2024
    • Florian Schröder's avatar
      Update Overcooked simulator to support state export in JSON format · df234b9c
      Florian Schröder authored
      The update introduces a new function `get_json_state()` in overcooked_environment.py that exports the current game state in JSON format. Changes were made to player.py, counters.py, and game_items.py to include an additional `to_dict()` function which represents their current status as a dictionary. This commit also includes minor naming changes, such as renaming `beginning_time` to `start_time`.
      df234b9c
Loading