Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » Coffee corner » Crazy(?) idea about debugging
Re: Crazy(?) idea about debugging [message #20439 is a reply to message #20434] Wed, 18 March 2009 21:05 Go to previous messageGo to previous message
mr_ped is currently offline  mr_ped
Messages: 825
Registered: November 2005
Location: Czech Republic - Praha
Experienced Contributor
To get back on topic, at least partially... John Carmack (ID Software) once said that during work at Quake 1 (if I recall correctly) he was tampering with the game replays improvements over old DOOM (which already did allow player to record gameplay movie and then replay it). It was already based on deterministic game engine behavior, so only user inputs had to be stored. I think DOOM does use fixed rate (60Hz?) user input sampling and that's what goes into replay file too.

So while he was on it, he decided to treat timer results just like another user input, i.e. the game timing was part of input data structure and processed centrally in the same routine as user keys and mouse. According to his own words, this improved reproducibility of game crashes from replays a lot, because he was now not only able to simulate player's movements, but also his framerate and the graphical effects become deterministic too, not just gameplay physics events.

This is IMHO very familiar to your idea, but works only for strictly deterministic application which react to limited amount of input data. If your app fits this description, you should probably think about central input processing routine, making everything what matters in it's run part of input, and then save a "replay" in every (debug) run, so in case of crash you can run a replay with the same input and see if it leads to crash again.

As UPP is also GUI library handling user clicks and keys, maybe having some integrated package to create "replays" of user would be possible. But it would need to cover many aspects of "input", including timers and maybe something more. It would be quite a challenge to make it universal enough. But it would help both with debugging, and with GUI automated testing.
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Stuck with icq
Next Topic: M$
Goto Forum:
  


Current Time: Thu May 16 02:38:44 CEST 2024

Total time taken to generate the page: 0.02505 seconds