Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
Cooperative Cuisine Environment
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Social Cognitive Systems
CoCoSy
Cooperative Cuisine Environment
Merge requests
!89
Project 'scs/cocosy/overcooked-simulator' was moved to 'scs/cocosy/cooperative-cuisine'. Please update any links and bookmarks that may still have the old path.
Resolve "simple pathfinding"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Resolve "simple pathfinding"
120-simple-pathfinding
into
dev
Overview
0
Commits
13
Pipelines
9
Changes
3
Merged
Fabian Heinrich
requested to merge
120-simple-pathfinding
into
dev
1 year ago
Overview
0
Commits
13
Pipelines
9
Changes
3
Expand
Closes
#120 (closed)
0
0
Merge request reports
Viewing commit
968826dd
Prev
Next
Show latest version
3 files
+
239
−
9
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
3
Search (e.g. *.vue) (Ctrl+P)
968826dd
Fix tests with empty layout, recipes cant be checked
· 968826dd
Fabian Heinrich
authored
1 year ago
cooperative_cuisine/configs/environment_config_no_validation.yaml
0 → 100644
+
208
−
0
Options
plates
:
clean_plates
:
2
dirty_plates
:
1
plate_delay
:
[
5
,
10
]
# range of seconds until the dirty plate arrives.
game
:
time_limit_seconds
:
300
undo_dispenser_pickup
:
true
validate_recipes
:
false
layout_chars
:
_
:
Free
hash
:
Counter
# #
A
:
Agent
pipe
:
Extinguisher
P
:
PlateDispenser
C
:
CuttingBoard
X
:
Trashcan
$
:
ServingWindow
S
:
Sink
+
:
SinkAddon
at
:
Plate
# @ just a clean plate on a counter
U
:
Pot
# with Stove
Q
:
Pan
# with Stove
O
:
Peel
# with Oven
F
:
Basket
# with DeepFryer
T
:
Tomato
N
:
Onion
# oNioN
L
:
Lettuce
K
:
Potato
# Kartoffel
I
:
Fish
# fIIIsh
D
:
Dough
E
:
Cheese
# chEEEse
G
:
Sausage
# sausaGe
B
:
Bun
M
:
Meat
question
:
Counter
# ? mushroom
↓
:
Counter
^
:
Counter
right
:
Counter
left
:
Counter
wave
:
Free
# ~ Water
minus
:
Free
# - Ice
dquote
:
Counter
# " wall/truck
p
:
Counter
# second plate return ??
orders
:
meals
:
all
:
true
# if all: false -> only orders for these meals are generated
# TODO: what if this list is empty?
list
:
# - TomatoSoup
# - OnionSoup
# - Salad
-
FriedFish
order_gen_class
:
!!python/name:cooperative_cuisine.orders.RandomOrderGeneration
'
'
# the class to that receives the kwargs. Should be a child class of OrderGeneration in orders.py
order_gen_kwargs
:
order_duration_random_func
:
# how long should the orders be alive
# 'random' library call with getattr, kwargs are passed to the function
func
:
uniform
kwargs
:
a
:
40
b
:
60
max_orders
:
6
# maximum number of active orders at the same time
num_start_meals
:
2
# number of orders generated at the start of the environment
sample_on_dur_random_func
:
# 'random' library call with getattr, kwargs are passed to the function
func
:
uniform
kwargs
:
a
:
10
b
:
20
sample_on_serving
:
false
# Sample the delay for the next order only after a meal was served.
serving_not_ordered_meals
:
true
# can meals that are not ordered be served / dropped on the serving window
player_config
:
radius
:
0.4
speed_units_per_seconds
:
6
interaction_range
:
1.6
restricted_view
:
False
view_angle
:
70
view_range
:
4
# in grid units, can be "null"
effect_manager
:
FireManager
:
class
:
!!python/name:cooperative_cuisine.effects.FireEffectManager
'
'
kwargs
:
spreading_duration
:
[
5
,
10
]
fire_burns_ingredients_and_meals
:
true
hook_callbacks
:
# # --------------- Scoring ---------------
orders
:
hooks
:
[
completed_order
]
callback_class
:
!!python/name:cooperative_cuisine.scores.ScoreViaHooks
'
'
callback_class_kwargs
:
static_score
:
20
score_on_specific_kwarg
:
meal_name
score_map
:
Burger
:
15
OnionSoup
:
10
Salad
:
5
TomatoSoup
:
10
not_ordered_meals
:
hooks
:
[
serve_not_ordered_meal
]
callback_class
:
!!python/name:cooperative_cuisine.scores.ScoreViaHooks
'
'
callback_class_kwargs
:
static_score
:
2
trashcan_usages
:
hooks
:
[
trashcan_usage
]
callback_class
:
!!python/name:cooperative_cuisine.scores.ScoreViaHooks
'
'
callback_class_kwargs
:
static_score
:
-5
expired_orders
:
hooks
:
[
order_expired
]
callback_class
:
!!python/name:cooperative_cuisine.scores.ScoreViaHooks
'
'
callback_class_kwargs
:
static_score
:
-10
# --------------- Recording ---------------
# json_states:
# hooks: [ json_state ]
# callback_class: !!python/name:cooperative_cuisine.recording.FileRecorder ''
# callback_class_kwargs:
# record_path: USER_LOG_DIR/ENV_NAME/json_states.jsonl
actions
:
hooks
:
[
pre_perform_action
]
callback_class
:
!!python/name:cooperative_cuisine.recording.FileRecorder
'
'
callback_class_kwargs
:
record_path
:
USER_LOG_DIR/ENV_NAME/LOG_RECORD_NAME.jsonl
random_env_events
:
hooks
:
[
order_duration_sample
,
plate_out_of_kitchen_time
]
callback_class
:
!!python/name:cooperative_cuisine.recording.FileRecorder
'
'
callback_class_kwargs
:
record_path
:
USER_LOG_DIR/ENV_NAME/LOG_RECORD_NAME.jsonl
add_hook_ref
:
true
env_configs
:
hooks
:
[
env_initialized
,
item_info_config
]
callback_class
:
!!python/name:cooperative_cuisine.recording.FileRecorder
'
'
callback_class_kwargs
:
record_path
:
USER_LOG_DIR/ENV_NAME/LOG_RECORD_NAME.jsonl
add_hook_ref
:
true
# Game event recording
game_events
:
hooks
:
-
post_counter_pick_up
-
post_counter_drop_off
-
post_dispenser_pick_up
-
cutting_board_100
-
player_start_interaction
-
player_end_interact
-
post_serving
-
no_serving
-
dirty_plate_arrives
-
trashcan_usage
-
plate_cleaned
-
added_plate_to_sink
-
drop_on_sink_addon
-
pick_up_from_sink_addon
-
serve_not_ordered_meal
-
serve_without_plate
-
completed_order
-
new_orders
-
order_expired
-
action_on_not_reachable_counter
-
new_fire
-
fire_spreading
-
drop_off_on_cooking_equipment
-
players_collide
-
post_plate_dispenser_pick_up
-
post_plate_dispenser_drop_off
-
on_item_transition
-
progress_started
-
progress_finished
-
content_ready
-
dispenser_item_returned
callback_class
:
!!python/name:cooperative_cuisine.recording.FileRecorder
'
'
callback_class_kwargs
:
record_path
:
USER_LOG_DIR/ENV_NAME/LOG_RECORD_NAME.jsonl
add_hook_ref
:
true
# info_msg:
# func: !!python/name:cooperative_cuisine.hooks.hooks_via_callback_class ''
# kwargs:
# hooks: [ cutting_board_100 ]
# callback_class: !!python/name:cooperative_cuisine.info_msg.InfoMsgManager ''
# callback_class_kwargs:
# msg: Glückwunsch du hast was geschnitten!
# fire_msg:
# func: !!python/name:cooperative_cuisine.hooks.hooks_via_callback_class ''
# kwargs:
# hooks: [ new_fire ]
# callback_class: !!python/name:cooperative_cuisine.info_msg.InfoMsgManager ''
# callback_class_kwargs:
# msg: Feuer, Feuer, Feuer
# level: Warning
Loading