Wednesday, 14 May 2008

Testing out mobile uploading


Hope I can get my email working again. Much MUCH more versatile.

Tuesday, 24 July 2007

Reactive Desktops

(originally posted on AmeCon forums)

At the moment though I'm playing around with some concept work of my own. I've been thinking of an adaptive system that will shadow the region below desktop icons so that they are more legible on a busy backdrop.

I've made a few inspirational designs to help describe how it might look (at the minute it means overlaying a gradient on top of an image [incidentally - this is a nifty way to make a larger resolution wallpaper using a smaller resolution image - using the empty space as a gradiated bar where your desktop icons sit]):


Others:

http://i106.photobucket.com/albums/m253/Ca...ed_wallpape.jpg

http://i106.photobucket.com/albums/m253/Ca...900_editted.jpg

http://i106.photobucket.com/albums/m253/Ca...0_wallpaper.jpg

http://i106.photobucket.com/albums/m253/Ca...er_1400x900.jpg


Hope you like the concept
*wonders why Vista doesn't have this*


~Jake

Monday, 23 July 2007

Project References

Thought I might as well use this space to link all my references and journal articles I found helpful:

Elo rating system: http://en.wikipedia.org/wiki/Elo_rating_system

Elo-rating in Estimation of Dominance Strengths (2000) - Albers & Vries: http://igitur-archive.library.uu.nl/bio/2006-1218-200420/albers_01_elorating.pdf

Rating the Chess Rating System (1999) - Prof. Mark E. Glickman: http://math.bu.edu/people/mg/papers/chance.pdf

Corporate view of TrueSkill: http://www.xbox.com/en-AU/live/xbox360/20050822-trueSkillmatchmaking.htm

The maths of TrueSkill using Bayesian Networks: http://research.microsoft.com/mlp/trueskill/Details.aspx

TrueSkill: A Bayesian Skill Rating System (2006) - Tom Minka: http://research.microsoft.com/~rherb/papers/hermingrae06.ps.gz

Video Game Genres: http://en.wikipedia.org/wiki/Video_game_genres

Valve Developer Community Wiki (coding resource for Source engine): http://developer.valvesoftware.com/wiki/Main_Page

XNA Game Studio Express (coding resource for XBox360): http://msdn2.microsoft.com/en-us/library/bb200104.aspx

Tournament.com ~ Currently in correspondence with design team concerning their own unique SmartRanking system working under the Source game engine. Upon resolution will emails be posted.

Compilation of Fuzzy Logic papers by Prof. Lotfi A. Zadeh: http://www-bisc.cs.berkeley.edu/Zadeh-1965.pdf
http://www-bisc.cs.berkeley.edu/Zadeh-1973.pdf
http://www-bisc.cs.berkeley.edu/ZadehFA-1976.pdf
(Soft Logic specific papers) -
http://www-bisc.cs.berkeley.edu/Zadeh2005.doc
http://www-bisc.cs.berkeley.edu/ZadehCW1999.pdf
http://www-bisc.cs.berkeley.edu/ZadehCW2002.pdf
http://www-bisc.cs.berkeley.edu/zadehcwp2002.pdf

Type-2 Fuzzy Membership Functions over Human Decision Making: http://www.cs.nott.ac.uk/~jmg/papers/fuzzieee-04-txo.pdf

Dungeons & Dragons v3.5 (revised edition) Players Handbook (useful in player classifications for a profiling system): http://www.wizards.com/default.asp?x=d20/article/srd35

Beyond Psychological Theory: Getting Data that Improves Games (GDC 2002) - Bill Fulton & Keith Steury: (developers talk from the 2002 Games Developers Conference ~ 128MB)
http://download.microsoft.com/download/6/7/3/6733732d-84e4-42fb-a2ef-2275cd21afd1/GDC2002BillFu_KeithSte.zip

Google Psychological Profiling within Games: http://www.itwire.com.au/content/view/12226/1092/
http://www.itwire.com.au/content/view/12152/1092/

Dynamic Difficulty and Adaptive AI within Games:
http://www.cs.northwestern.edu/~hunicke/pubs/Hamlet.pdf (concerns use of Half Life stats through Hamlet system)
http://www.ritualistic.com/games.php/sineps/info_dyndiff.php (concerning the adaptive 'Personal Challenge system' in use by Ritual Entertainment)

Okay the concept is this...

Starting out with 2 initial ideas between me and my supervisor at the beginning of this project, I wanted to present a way for players to be matched according to skill within a game of Counter Strike: Source. My supervisor wanted me (through discussion and expansion of the idea) to try and use player statistics gathered by the game engine to be used to profile the user.

At first I was enthusiastic, believing that I could take said stats - create some form of a personal player config. file containing details like a player's hair colour. This would be useful, say in a game like Elder Scrolls 4: Oblivion - where a player can choose how they want their in-game character to look.
The system would be able to detect that you had written 'Orange' or 'Ginger' and accordingly change variables automatically to match as best it could. After spending some time afterwards further researching how one profiles a gamer - I came to a loss. Without the necessary Psychology knowledge to accurately 'brand' a gamer, I decided to take a step back from the idea and try to work on my initial idea again - but this time taking on facets of a profiler.

So my idea evolved again upon the works of TrueSkill designed for XBox LIVE. But rather than have a unique measure of 'skill' for one game as with TrueSkill - my idea would encompass all games played on a platform (at the time still looking at Source-based FPS games).
After further thought, and going back over the profiling studying previously I had a brain wave to amalgamate several branches of thought.

1) Have a unified measure of 'skill' for a player which could be carried across games
2) An ability to mark a player based on the game types they play
3) A useful community tool that players could get competitive about
4) A useful marketing tool for a console developer to directly target gamers through LIVE


So as it stands my system will work thusly:

Through careful analysis of game genres, specific skills will be drawn up. Examples would be looking at an FPS game like Counter Strike, where a player can be measured on their accuracy, hand-eye-coordination and to a lesser extent strategy. But for another genre like a Real Time Strategy game (RTS) such as Civilization - a player might be marked higher on their strategic play over their hand-eye-coordination.



This might give you some indication of how this would operate, different games being marked and weighted on their attributes to a player's unique profile. So imagining you click on a player's gamercard in LIVE, it might look like a bunch of bars charting that player's skills in different areas in similar vein to how a paper roleplayer in D&D might look.



Not only is this quite interesting to another player (who might be just checking out their gamercard for what games they both play), but it is extremely useful to the primary user. Such a system might be able to highlight where they are weak and congratulate them for where they are doing well (perhaps by awarding them unique prizes or inviting them to gaming tournaments). Also, in line with many popular MMO games available like Final Fantasy XI - the game user could obtain some form of official Microsoft 'level' that takes levels of skills across genres and builds it up slowly. So in many ways we can compare a genre to a 'class' in a MMO/RPG.

Another useful aspect of this system is that someone like Microsoft could use this knowledge and more accurately target gamer's through their LIVE Marketplace service. So if you like playing lots of Live Arcade games, or perhaps a FIFA football game - they could tailor the adverts and recommend similar titles.
So you see the system could be useful to 3 parties - Microsoft (or Sony - I'm not THAT biased ;D), the gamer, and the gaming community as a whole.

But you may be thinking at this point, doesn't this just mean it's a gimmick? A simple tool like XBox360 achievements, to get people to play more and for the console manufacturers to rake in more money? Well no, at least not entirely.
If we are in the position to score a player, we can better match them within a game played online - further refining the TrueSkill process. And as skill is based on a wider variety of attributes which could be carried over between games, a seasoned FPS gamer could start playing a new FPS against others at an equal level - in a sense carrying on from where they left off.

Current analysis of how the TrueSkill system works is that it takes a players recorded wins/losses and predicts through a series of Bayesian networks that player's future game outcomes. Deviation from this will either improve or reduce that gamers TrueSkill - but their rank might increase as a result of experience (the longer you play something - no matter the outcome will undoubtedly make you a more experienced player [just not a very good one!]).
But is that fair? I think it is, its just a very narrow minded way of looking at the situation. The TrueSkill system was developed off the back of the Glicko system, which was in turn based off the Elo system used for rating chess players back in the late 40's.

Is this an accurate basis for which to rate players of games probably never conceived back then? Does my UNO TrueSkill have anything in common with my Halo 2 TrueSkill? The chances are unlikely... (would provide Halo 2 TrueSkill if it told me)
Instead my system would open the door for new ways to measure a players skill, then pit them against suitable foes. After all it doesn't have to end with multiplayer gaming; what if a games developer took this into account and through Dynamic difficulty changes (as demonstrated quite well in SiN: Episodes) could tailor the game to suit your style of play - or perhaps manipulate the game to become more challenging in areas where the player is weakest.
An example could be asking you to play a game of poker with the main bosses' henchman to gain admittance to see the Don. If your a thoroughbred FPS gamer, this could be quite challenging and might be useful to exploit the users weakness'. Similarly if you play UNO everyday, you might have to shoot the guy and his cronies - again preying of the users weakness' in Hand-Eye-Coordination. It's really up to the developer what they choose :)

I hope I've managed to highlight some of the particular benefits this system could have if it were implemented, and I look forward to any comments you have as I haven't tried to get toooooo in-depth.

~Jake

Eureka!

Okay, I finally have a saleable idea to which to present to my supervisor that he might love :DDD

I will post more details once I have his blessing and he's suitably impressed - otherwise it's back to the drawing board...

(for those of an enquiring mind - it has something to do with Microsoft and the Live service they run, and a new approach to GamerScore!)

Monday, 18 June 2007

About this blog

I decided from all the random thoughts I have over the state of games, gaming, computing, science etc., I thought it best to start up my own blog charting findings, cool ideas and interesting thoughts I have along my travels.

The information therefore on this site can be taken to be bunk. Not official. Even if it is official, don't assume I'm trying to be right. This blog is for me to vent my mind (though I'll try to keep it technology related!) on various topics from both my own to what I find. So that means if I have an opinion - it's mine, not yours. Should I allow commenting in the future (or for that matter - public viewing of the blog!), please don't spend your time trying to put me right. I want your opinion too.

Don't worry. I don't bite!

>;¬)

~Jake