Commit Graph

684 Commits

Author SHA1 Message Date
manishthani 85b96ce12a Fixed bug related with Pygame surface too large (#1657) 2019-05-22 17:31:44 +02:00
manishthani ce3ea1c463 Improved lane markings and added sidewalks to no_rendering_mode.py (#1620)
* improved lane markings + added sidewalks + added crosswalks function + refactor
* Update CHANGELOG
* Commenting crosswalk func dur to pylint
2019-05-20 15:24:12 +02:00
manishthani 4a41672e85
Merge branch 'master' into manishthani/load_props_definition 2019-05-14 16:37:28 +02:00
Néstor Subirón cf58f7a2c1
Fix dead-lock when loading a new map in synchronous mode. (#1588)
* Fix #1412, dead-lock when loading a new map in synchronous mode.
* Update CHANGELOG
* Add smoke test for #1412
2019-05-10 16:33:48 +02:00
Daniel Novillo 1f8e405425 Exposed 'is_invincible' for pedestrians (#1454) 2019-05-08 13:45:02 +02:00
Marc Garcia Puig 35815dac47 Ignoring warnings on system libs on Win build 2019-05-07 15:59:31 +02:00
nsubiron 9e2ea00820 Fix missing requirements of PythonAPI util 2019-05-07 11:51:16 +02:00
manishthani bfec4390a0
Merge branch 'master' into manishthani/load_props_definition 2019-05-03 18:40:31 +02:00
Manish 3c15ffde57 Added smoke test 2019-05-03 18:18:14 +02:00
nsubiron 32d9715ef8 Upgrade to Unreal Engine 4.22 and clang 7 2019-05-03 12:53:43 +02:00
germanros1987 94bc06274b
Merge master into local_planner_debug_flag 2019-05-02 10:24:28 -07:00
Tomasz Sułkowski 538b4e04d6 Client-side bounding boxes (#1383)
* BasicSynchronousClient for client side bounding boxes done
* client-side bounding boxes done
* Updated CHANGELOG.md and client_bounding_boxes with appropriate imports for development build
* moved client_bounding_boxes.py to examples/
* attempt to fix strange pylint error
* fix attempt for pylint2
* Disabled pylint E1126 as it is getting confused with numpy matrix slice
2019-05-02 16:01:47 +02:00
Felipe Codevilla 092d3d7898 adding the flag correctly 2019-05-01 21:02:47 -04:00
nsubiron 75f1f8593b Fix narrowing conversions and add warnings for it 2019-04-29 15:35:33 +02:00
nsubiron 4f3b000225 Compile with more warnings enabled 2019-04-29 15:35:33 +02:00
nsubiron 9e4925b838 Include external dependencies as system to allow stricter warning checks 2019-04-29 15:35:33 +02:00
Marc Garcia Puig 424c32d2d4 Added waypoint's junction_id (#1509)
* Added waypoint's junction_id and is_junction
* Updated changelog
* Removed unnecessary const
2019-04-29 15:34:45 +02:00
bernatx af5055490e Fix the start_recording.py script 2019-04-26 17:15:37 +02:00
bernatx f4beec9407 Walker animations added to recorder
Wheels also rotate using inertia of movement only
2019-04-26 17:15:37 +02:00
nsubiron 2c8f55ad36 Lower pedestrian speed in manual control 2019-04-26 17:07:41 +02:00
Praveen Kumar a707c69db9 Improved turn decision logic on lane changes.
Fixed route duplication issue on lane change.
2019-04-16 14:52:19 +05:30
Praveen Kumar ec4fdd71f5 Fixed false straights 2019-04-16 14:52:19 +05:30
Praveen Kumar 6591cb3e1a draft implementation of fix:
* Improved decision logic after intersection
* Fixed key error on lane change segments
2019-04-16 14:52:19 +05:30
张子岳 6eafccaa08 Fix bug about lidar effectiveness (#1531) 2019-04-16 10:01:50 +02:00
bernatx af6796b16e Fixing script with pyLint 2019-04-12 10:25:13 +02:00
bernatx 78ef040485 Removed script to change playback time factor (no needed) 2019-04-12 10:25:13 +02:00
bernatx 739142954d Renaming playback speed by playback time factor 2019-04-12 10:25:13 +02:00
bernatx 2d2f1654dc Use batch commands to create and remove actors from recorder 2019-04-12 10:25:13 +02:00
bernatx 6d7b3d00ef Fixing PyLint warnings 2019-04-12 10:25:13 +02:00
bernatx c6ff4cb362 Added an optional parameter to show more details about a recorder file
Related to the show_recorder_file_info.py API
2019-04-12 10:25:13 +02:00
bernatx be37d22335 Added replayer speed (time factor for slow/fast motion) 2019-04-12 10:25:13 +02:00
Praveen Kumar 730a9a8325 Fixed out of domain input problem 2019-04-11 16:05:03 +05:30
Praveen Kumar 573722732a Added check for dangling edge with zero length path 2019-04-09 00:38:32 +05:30
Praveen Kumar 5bfc7d1446 Fixed dangling segment issue:
* Localization now also using section id
* Added _find_loose_end method to resolve issue
2019-04-08 21:53:46 +05:30
nsubiron bd0711e87a Increase version 2019-04-04 19:15:45 +02:00
nsubiron 24edc1de30 Add optional argument "actor_ids" to world.get_actors to request only the actors with the ids provided 2019-04-04 16:37:21 +02:00
nsubiron 2a50786c62 Update spawn_npc.py to use batch commands 2019-04-04 14:42:28 +02:00
nsubiron ec477c5514 Add method client.apply_batch_sync that waits for server response 2019-04-04 14:42:28 +02:00
nsubiron 476d587a7d Add carla.command to spawn actors in batch 2019-04-04 14:42:28 +02:00
nsubiron b29d04ea33 Add extra constructors to carla.command objects to use actors directly 2019-04-04 14:42:28 +02:00
German Ros 5f13bd817e Fix: Problem divided by small numbers in PythonAPI/navigation/misc.py
Added eps
2019-04-03 15:09:02 -07:00
Fabian Oboril 7451cf1008 Fix division by zero in is_within_distance_ahead() 2019-04-02 20:32:47 +02:00
Manish 2aef64fc6b changed color of speed limit 2019-04-01 18:10:28 +02:00
Manish 0c6b41ef07 spawned hero actor is deleted when closing no rendering mode 2019-04-01 18:10:28 +02:00
nsubiron a8d08e1261 Add option to no_rendering_mode.py to show spawn points 2019-04-01 18:10:28 +02:00
Manish efd06cd71c Trigger boxes' color is different for each actor 2019-04-01 18:10:28 +02:00
Manish d0f8efdb13 show triggers of speed limits 2019-04-01 18:10:28 +02:00
nsubiron b94ed197a8 Add option to no_rendering_mode.py to show waypoint connections 2019-04-01 18:10:28 +02:00
nsubiron f15bd3f68e Fix LibCarla.client install path in Windows 2019-04-01 14:46:44 +02:00
nsubiron 528a59319b Fix no-rendering mode 2019-03-30 15:21:02 +01:00
nsubiron f22df6d4a5 Increase smoke tests time-out 2019-03-30 14:36:44 +01:00
Manish 514cfacaa6 fixed triggers bounding box draw 2019-03-30 14:36:44 +01:00
Manish 222898e995 add draw trigger of traffic lights 2019-03-30 14:36:44 +01:00
Manish ca6bcafa72 added parking and shoulders to no rendering mode 2019-03-30 14:36:44 +01:00
nsubiron 5fd463d7aa Remove CarlaCola truck from the list of safe vehicles 2019-03-30 14:36:44 +01:00
Manish a66d7ee7ad fixed small visual things 2019-03-30 14:36:44 +01:00
Manish 424372a67e lane markings and loading time of no rendering mode improved 2019-03-30 14:36:44 +01:00
bernatx a821963ccf Added flag to show trigger boxes for traffic signs 2019-03-30 14:29:57 +01:00
nsubiron 30cc42686b Update license year 2019-03-30 14:29:57 +01:00
nsubiron 8c7189b533 Allow changing map from no-rendering mode 2019-03-30 14:29:57 +01:00
nsubiron 5727ef6512 Remove unnecessary requirement 2019-03-30 14:29:57 +01:00
nsubiron b10484f5c6 Fix path to egg file 2019-03-30 14:29:57 +01:00
nsubiron abc4789a03 Move generate_map.py to Util folder 2019-03-30 14:29:57 +01:00
nsubiron e683007aeb Reorganize PythonAPI folder 2019-03-30 14:29:57 +01:00
nsubiron f8edbb081f Fix Python scripts 2019-03-30 13:12:22 +01:00
nsubiron 6d62bec3c3 Rename WaypointInfoRoadMark to LaneMarking 2019-03-30 12:24:51 +01:00
nsubiron 73b08e4a37 Merge branch 'master' into feature/new_opendrive_parser 2019-03-29 21:33:57 +01:00
German Ros 23723069c1 Fix: global router to be consistent with the new Waypoint API 2019-03-29 12:50:39 -07:00
nsubiron d657297770 Remove unused stuff 2019-03-29 17:19:46 +01:00
Praveen Kumar a0d8c300a9 * Fixed lane change logic
* Overlapping path logic
* Increased local planner queue length to accomodate larger route plans
2019-03-29 19:19:11 +05:30
Marc Garcia Puig f01b6f0f5a Fixed PythonAPI error 2019-03-28 17:04:26 +01:00
Marc Garcia Puig 293a4d7664 Updated Waypoint docs 2019-03-28 15:37:53 +01:00
Manish 21187fa2f1 Yield included in no rendering mode 2019-03-28 15:37:53 +01:00
Manish e2d3795239 Improving lane markings no rendering mode + small fix 2019-03-28 15:37:53 +01:00
Marc Garcia Puig 7b97f11959 Fixed not returning valid RoadMarks 2019-03-28 15:37:53 +01:00
Marc Garcia Puig 37110043cd Now, WaypointInfoRoadMark can be None in Python 2019-03-28 15:37:53 +01:00
Manish a953834f5e roadmark binding in PythonAPI and adapted no rendering mode 2019-03-28 15:37:53 +01:00
Marc Garcia Puig a5f7261f27 Added support for lane mark info on waypoint core 2019-03-28 15:37:53 +01:00
Praveen Kumar a86d37f477 Modified router to work with new waypoints API 2019-03-28 19:31:55 +05:30
Praveen Kumar 1b04100b22 Appropriately ending waypoint trace 2019-03-28 19:31:55 +05:30
Praveen Kumar 1c11fae26a Global router waypoint generation implemented
independently of global plan generation

Note: waypoint generation also includes plan details but it is generated using waypoints,
Not the other way round
2019-03-28 19:31:55 +05:30
Praveen Kumar 31b80f86ac Checkpoint ! Major code overhauling ahead. 2019-03-28 19:31:55 +05:30
Praveen Kumar acd5ce0127 Basic agent integration and code overhauled
* Split basic agent functionality into sensible private methods
* Fixed global router intersection verifier to work with lane change edges
2019-03-28 19:31:55 +05:30
Praveen Kumar b854ed0851 Global router overhauled
* Enabled support for 3d localization and routing
* Added graph representation for lane change
* Overhauled code to make use of carla objects as much as possible

EOD commit
2019-03-28 19:31:55 +05:30
Praveen 106d3e116c * Fixed false red signal detection
* Fixed route interpretation logic

EOW work desktop commit
2019-03-28 19:31:55 +05:30
Praveen 1530144f71 * Fixed round about path overlap issue
* Fixed intersection identification issue

EOW Work Desktop Commit
2019-03-28 19:31:55 +05:30
Praveen 8a876d7d75 Fixed intersection ignore issue on town 03 2019-03-28 19:31:55 +05:30
nsubiron 560c124dab Merge branch 'master' into feature/new_opendrive_parser 2019-03-27 16:40:11 +01:00
Pasch, Frederik b3bac35fbe LaneInvasionSensor stabilization
- Fix naming: Use 'LaneInvasionSensor'/'lane_invasion' instead of mixture with 'LaneDetector'/'lane_detector'
 - Create server-side LaneInvasionSensor (to be able to access it via ROS bridge)
2019-03-27 11:05:19 +01:00
Marc Garcia Puig 53d811ba16 Merge remote-tracking branch 'origin/manishthani/no_rendering_opendrive' into jenkins/opendrive 2019-03-26 15:25:12 +01:00
Marc Garcia Puig fd45428933 Updated no_rendering_mode 2019-03-26 15:24:16 +01:00
Marc Garcia Puig d8d399494e Merge branch 'marcgpuig/opendrive' into jenkins/opendrive 2019-03-26 14:35:19 +01:00
Manish 5da0350ea9 scene layout for new opendrive 2019-03-26 14:30:04 +01:00
Marc Garcia Puig 5272abf37b Fixed Waypoint type search 2019-03-26 14:12:22 +01:00
Manish abf67f0ddc Fixed lane markings for no rendering mode 2019-03-26 12:31:58 +01:00
Marc Garcia Puig 0149a86037 Merge remote-tracking branch 'origin/manishthani/no_rendering_opendrive' into marcgpuig/opendrive 2019-03-25 23:55:27 +01:00
Marc Garcia Puig dd4897faa4 Added lane types to API 2019-03-25 23:52:46 +01:00
nsubiron 5acf722799 Allow creating a carla.Map from an XODR string 2019-03-25 23:18:25 +01:00
Jose Carlos Ferrugem e92f944ec6 the type was not there anyway 2019-03-25 15:58:11 -04:00
Jose Carlos Ferrugem 180d6262a5 adding the type of the prop 2019-03-25 15:58:11 -04:00
Jose Carlos Ferrugem 3f400aef75 fixing typo 2019-03-25 15:58:11 -04:00
Felipe Codevilla 45536b2ce5 scena layout 2019-03-25 15:58:11 -04:00
Felipe Codevilla 60c61f9880 scene layout adding static props 2019-03-25 15:58:11 -04:00
Manish ec5a4bc72b Adapted no rendering to new opendrive 2019-03-25 20:29:32 +01:00
bernatx 448bbfc65f Exposing lane section id to client API 2019-03-25 17:56:02 +01:00
nsubiron 889b998336 Include scene_layout.py in package 2019-03-22 16:04:11 +01:00
Pasch, Frederik d1913a295d Add rolename parameter to manual_control 2019-03-22 10:00:19 +01:00
nsubiron ddf3ad2282 Pylint ignore performance benchmark 2019-03-19 22:34:49 +01:00
nsubiron 824acaa049 Disable Pylint false positive 2019-03-19 22:34:49 +01:00
nsubiron 426bee6d81 Fix typo 2019-03-19 22:34:49 +01:00
nsubiron 9f34e37825 Add networkx dependency 2019-03-19 22:34:49 +01:00
nsubiron 236a1fc81f Fix Pylint errors of scene_layout.py 2019-03-19 22:34:49 +01:00
nsubiron 0efd55a385 AutoPEP8 everything 2019-03-19 22:34:49 +01:00
nsubiron 0c1f17f05f Fix Pylint errors of manual_control_steeringwheel.py 2019-03-19 22:34:49 +01:00
germanros1987 1c3713459c removing global router test for the time being 2019-03-19 22:34:49 +01:00
nsubiron 003661cc5b Fix generate_map.py linter errors 2019-03-19 22:34:49 +01:00
nsubiron d2dea42f11 Pylint every Python file in PythonAPI 2019-03-19 22:34:49 +01:00
germanros1987 37e2c951e6 removed test_global_route_planner.py 2019-03-19 22:34:49 +01:00
germanros1987 b85b006ad5 agents code updated 2019-03-19 22:34:49 +01:00
nsubiron 1bb2ccff10 Fix some Pylint errors and warnings 2019-03-19 22:34:49 +01:00
nsubiron 848c068b63 Upgrade travis.yml to Ubuntu 16.04 2019-03-19 22:34:49 +01:00
nsubiron e78f9daab2 Add smoke tests for checking the waypoints of each town 2019-03-19 19:27:08 +01:00
Felipe Codevilla 81f781cb5c scene layout, fixing testing functions 2019-03-18 20:31:11 -04:00
Felipe Codevilla 62d0d0e134 scene layout 2019-03-18 20:13:16 -04:00
nsubiron 97a46f00c6 Make performance_benchmark.py executable 2019-03-18 15:09:55 +01:00
Fabian Oboril 569a2d80d1 Fix cleanup local_planner when used by other modules
If the local_planner is used by other Python modules the cleanup causes
a destruction of the actor, handed over to the local_planner. As this
may be undesired, an additional reset_vehicle() method was added to the
local_planner.
2019-03-16 18:59:38 -07:00
Néstor Subirón 0c04479612
Merge branch 'master' into master 2019-03-15 17:40:43 +01:00
nsubiron db1addc378 Fix #1381, make sensors use timestamp from UCarlaEpisode 2019-03-15 14:39:23 +01:00
nsubiron 93c3b5fa71 Increase license year 2019-03-14 20:19:29 +01:00
nsubiron 2e254528a2 Add some smoke tests 2019-03-14 20:17:55 +01:00
nsubiron 40836a1fd4 Add infrastructure for smoke tests in Jenkins 2019-03-14 20:17:55 +01:00
Kartik df30cbae1a Fix to locate carla python package in performance_benchmark.py 2019-03-14 17:00:05 +05:30
nsubiron 39ec79ead2 Remove profiler from libcarla_client 2019-03-13 16:51:31 +01:00
Pasch, Frederik 3d2e08611e Add time to SensorData 2019-03-13 16:07:31 +01:00
nsubiron 89161775a4 Add s property to waypoints 2019-03-11 17:33:11 +01:00
nsubiron 6a6254fd5e Add unique ID for waypoints based on their position on the road 2019-03-11 17:33:03 +01:00
nsubiron 1a081e8f67 Add method to Map to transform Location to GeoLocation 2019-03-11 14:37:48 +01:00
germanros1987 0826b307c2 new flag in no_rendering_mode.py to actually switch off rendering if needed: 2019-03-10 14:20:45 -07:00
nsubiron cf1598ae61 Increase version 2019-03-01 20:29:47 +01:00
Daniel 155a03ab5e Improved output 2019-03-01 15:14:52 +01:00
Marc Garcia Puig 6966d56c76 Changed right/left_lane() to get_right/left_lane() 2019-03-01 02:36:17 +01:00
Marc Garcia Puig 34fad123d7 Added the lane_explorer example 2019-03-01 02:36:17 +01:00
Marc Garcia Puig 7e0d570e1c Now all the roadmarks are parsed + added lane type to waypoint API. 2019-03-01 02:36:17 +01:00
Marc Garcia Puig 8f9ec7fc69 Small indentation style fix 2019-03-01 02:36:17 +01:00
Marc Garcia Puig a66dff8669 Extended waypoint API core to accept lane changes 2019-03-01 02:36:17 +01:00
German Ros 09dcc4ec5e minor bug fix 2019-02-28 15:58:40 -08:00
German Ros 628b78844b Revert "updated LIDAR setup to reflect a real Velodyne 32"
This reverts commit 0c8d38adf1.
2019-02-28 15:55:04 -08:00
German Ros 0c8d38adf1 updated LIDAR setup to reflect a real Velodyne 32 2019-02-28 15:52:40 -08:00
German Ros 0e019f5fb1 blocked fixed 2019-03-01 00:48:32 +01:00
German Ros e3e98b4628 minor fixes 2019-03-01 00:48:32 +01:00
German Ros f3f69fddb6 changelog updated 2019-03-01 00:48:32 +01:00
German Ros 0657f226de performance benchmark CARLA 2019-03-01 00:48:04 +01:00
German Ros ee3f380752 performance_benchmark initial script 2019-03-01 00:48:04 +01:00
nsubiron 338afbdc3b Add synchronous mode example script 2019-03-01 00:15:58 +01:00
nsubiron 2696c9684e Fix #784, add methods for sending commands in batch 2019-03-01 00:15:58 +01:00
nsubiron 8fb6197a79 Add a method for getting the list of available maps in Python API 2019-03-01 00:15:58 +01:00
nsubiron 5210cd71f0 Make load map methods const 2019-03-01 00:15:58 +01:00
nsubiron 6bb2feb9b1 Fix #1272, allow changing the map from client-side 2019-03-01 00:15:58 +01:00
nsubiron 5b7098a67c Remove map_name from world 2019-03-01 00:15:58 +01:00
nsubiron fe2ebc527c Allow changing episode settings at runtime (sync mode and no-rendering mode) 2019-03-01 00:15:58 +01:00
nsubiron e90e82cc81 Fix #1244, make simulator wait for client cue each tick if sync mode is enabled 2019-03-01 00:15:58 +01:00
germanros1987 9ab1411bd4
Merge master into manishthani/no_rendering_mode 2019-02-28 12:29:05 -08:00
Néstor Subirón 1798e57ef9
Merge branch 'master' into autogenerate-map-commandlet 2019-02-28 16:08:48 +01:00
nsubiron 34a6afac1c Make Python scripts executable 2019-02-28 15:22:24 +01:00
nsubiron 6789783a17 Merge branch 'master' into bernatx/Recorder 2019-02-28 15:17:18 +01:00
Manish 27c472fce6 Improved stop signs and fixed pylint messages 2019-02-28 14:14:50 +01:00
bernatx b7be0c67d3 Changes for the Pull Request 2019-02-28 12:37:02 +01:00
Manish d7b28173ef Text also updates according to affecting light state 2019-02-28 11:12:34 +01:00
Manish 847117245a Merge branch 'master' into manishthani/no_rendering_mode 2019-02-28 10:38:48 +01:00
Manish 7fe55b8d6c Fixed bug 2019-02-28 10:14:31 +01:00
Daniel 9051def0ee Small fixes 2019-02-27 20:01:23 +01:00
Daniel 1644ae4b17 Fixed material issue 2019-02-27 20:01:23 +01:00
Daniel 5491ab54eb Improved script messaging 2019-02-27 20:01:23 +01:00
Daniel 166375b87e Removed test print 2019-02-27 20:01:23 +01:00
Daniel 8d2769d22e first completed version of the generate_map.py script 2019-02-27 20:01:23 +01:00
Daniel a34a0e1d02 Basic functionality achieved.
- FBX to UMAP
2019-02-27 20:01:23 +01:00
Aidan Clear 5cbde4d5a9 Updating api to allow retrieval of traffic pole index and the other traffic lights in a group from a traffic light 2019-02-27 18:48:40 +01:00
Manish be6b9d3b79 Traffic light gets illuminated when car is close to its trigger volume 2019-02-27 18:20:11 +01:00
nsubiron 3e93782c98 Expose traffic sign's trigger volumes on Python API 2019-02-27 17:47:36 +01:00
bernatx dc6fb320e0 Calling Recording functions without blocking Python 2019-02-27 15:29:01 +01:00
Néstor Subirón 0e7e1b0b91
Merge branch 'master' into new_expose_vehicle_physics 2019-02-27 12:29:58 +01:00
Manish 15d6675ddb calling get physics control without gil 2019-02-27 12:00:12 +01:00
Marc Garcia Puig f0273d5465
Merge branch 'master' into marcgpuig/windows_build 2019-02-27 11:50:57 +01:00
Manish 0cf2c1b5de changed pixels per meter to avoid pygame error when loading town06 2019-02-26 17:46:56 +01:00
bernatx 4edf6c4fd7 Fix error when client can not connect to server 2019-02-26 15:07:19 +01:00
manishthani a49e14997e
Merge branch 'master' into new_expose_vehicle_physics 2019-02-26 14:56:05 +01:00
Manish 3390e5a718 Updated documentation and small refactor 2019-02-26 11:44:51 +01:00
Manish 37f70ba184 Bug Fix: vehicles do not vibrate and map name accessed from map object 2019-02-25 17:38:35 +01:00
Manish 331c0b04d2 Merge branch 'master' into NoRenderingModeFixes 2019-02-25 14:57:15 +01:00
Manish dcc0cc4f1d Added default params and refactored 2019-02-25 13:16:57 +01:00
bernat 98492c592d
Merge branch 'master' into bernatx/Recorder 2019-02-25 12:16:06 +01:00
Manish 333fe4546d refactored code 2019-02-25 11:17:16 +01:00
Manish 12fd0178e5 Improved test, removed inertia tensor scale, fixed bindings and center of mass 2019-02-24 19:47:35 +01:00
Manish a5b54cbcea Added stop signals and changed colors 2019-02-22 11:58:18 +01:00
German Ros 00652c92de added steering wheel control example 2019-02-22 11:10:27 +01:00
Manish 6002091935 prettified 2019-02-21 15:30:16 +01:00
Manish 644ccb75ed Changed some objects to tango color,controlled vehicle has different color than rest 2019-02-21 15:01:33 +01:00
bernatx 2cc9df0149 Fix manual_control.py problem ending any recording in curse when closing 2019-02-21 14:02:23 +01:00
Manish efe55fd38b fixed some bugs 2019-02-21 13:08:08 +01:00
bernatx bf693b71bf Added scripts for recording/replaying, and also add documentation. 2019-02-21 12:13:48 +01:00