AI Pr0n Maximum Exposure of your debug info! By David “Rez” Graham.

Slides:



Advertisements
Similar presentations
Time Sheet Training Press the F5 Key to view the Presentation. It may be helpful to have a printed copy of this slide presentation for the practice sessions.
Advertisements

The essentials managers need to know about Excel
Welcome to Famis From W&M home page – Search famis.
Use-Cases.
Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
Computers are a necessary part of modern life
Professional Toolkit V2.0 C:\Presentations - SmartCafe_Prof_V2.0 - bsc page 1 Professional Toolkit 2.0.
COMPUTER PROGRAMMING I Essential Standard 5.02 Understand Breakpoint, Watch Window, and Try And Catch to Find Errors.
Group that looked at Miami syllabus. Current Syllabus (with regards to testing) 2: To be able to identify and eliminate errors in programs – 2.1: Describe.
Georgia Institute of Technology DrJava Appendix A Barb Ericson Georgia Institute of Technology May 2006.
Is it good to be young?.  Is it easy to be young?  Why is the teens’ life difficult?  What problems do teens have?  What are the reasons of the problems?
User Interface Testing TPTL MRA. Layout 1 You will navigate through this form using the arrow keys. The drop down lists will be displayed by pressing.
Debugging CPSC 315 – Programming Studio Fall 2008.
The IDE (Integrated Development Environment) provides a DEBUGGER for locating and correcting errors in program logic (logic errors not syntax errors) The.
How to Debug VB .NET Code.
Problem of the Day Problem of the Day next Using a Calculator.
CS0004: Introduction to Programming Events. Review  Event Procedure  A set of instructions to be executed when a certain event happens.  Many event-driven.
Introduction to programming in MATLAB MATLAB can be thought of as an super-powerful graphing calculator Remember the TI-83 from calculus? With many more.
AI Post Mortem Inside Sims Medieval By David “Rez” Graham.
Plone vs The New Guy The Initial Struggles of a Beginning Plone Developer John Hren University Wisconsin - Oshkosh.
Blackboard 9.1 Presented by: Kim Shaver Associate Director of Educational Technology Assisted by : Alicia Harkless, Educational Technology Specialist,
The NetBeans IDE CSIS 3701: Advanced Object Oriented Programming.
Basic HTML e-Learning Tutorial Storyboard Linda Sauerbrun AET/545 February 15, 2015 Dr. Poe.
DEBUGGING CHAPTER Topics  Getting Started with Debugging  Types of Bugs –Compile-Time Bugs –Bugs Attaching Scripts –Runtime Errors  Stepping.
By: Keaton & David. Movement ProsCons  We were able to make the object move horizontal easily.  We were able to make the object move up and down easily.
Automating Database Processing Chapter 6. Chapter Introduction Design and implement user-friendly menu – Called navigation form Macros – Automate repetitive.

Win32 Programming Lesson 1: Why We’re All Here. Why We’re Here…  Okay, maybe that’s too grandiose  Windows – in particular Win32 Thirty-what?  What.
1. Insert the Resource CD into your CD-ROM drive, click Start and choose Run. In the field that appears, enter F:\XXX\Setup.exe (if “F” is the letter of.
History of C 1950 – FORTRAN (Formula Translator) 1959 – COBOL (Common Business Oriented Language) 1971 – Pascal Between Ada.
CPSC1301 Computer Science 1 Overview of Dr. Java.
ME 142 Engineering Computation I Debugging Techniques.
© 2006 by «Author»; made available under the EPL v1.0 | Date | Other Information, if necessary Doug Schaefer My plans/dreams for C# in CDT.
1 Κατανεμημένες Διαδικτυακές Εφαρμογές Πολυμέσων Γιάννης Πετράκης.
Intelligent Ground Vehicle Competition Navigation Michael Lebson - James McLane - Image Processing Hamad Al Salem.
P rofessional D evelopment P ortfolio An Introduction to the.
Exceptions cs1043. Program Exceptions When a program detects an error, what should it do? – Nothing, simply allow the program to fail. – Implement a course.
Spreadsheet Engineering Builders use blueprints or plans – Without plans structures will fail to be effective Advanced planning in any sort of design can.
Copyright © 2004 – 2013 Curt Hill Java Debugging In Eclipse.
Fundamentals of Software Development 1Slide 1 Correcting Run-Time Errors Small changes and the “What did you just change?” ruleSmall changes and the “What.
When the program is first started a wizard will start to setup your Lemming App. Enter your company name and owner in the fields designated “Company Name”
CM220 College Composition II Friday, January 29, Unit 1: Introduction to Effective Academic and Professional Writing Unit 1 Lori Martindale, Instructor.
Version Control and SVN ECE 297. Why Do We Need Version Control?
College:The First Year Demo Template Only ENTER. Table of Contents.
AVCE ICT – Unit 7 - Programming Session 12 - Debugging.
Programming Objectives What is a programming language? Difference between source code and machine code What is python? – Where to get it from – How to.
Chapter 7 What’s Wrong with It? (Syntax and Logic Errors) Clearly Visual Basic: Programming with Visual Basic nd Edition.
Debugging using By: Samuel Ashby. What is debugging?  A bug is an error in either a program or the hardware itself.  Debugging is first locating and.
Debuggers. Errors in Computer Code Errors in computer programs are commonly known as bugs. Three types of errors in computer programs –Syntax errors –Runtime.
Experience sharing - Introducing a tool for announcing and tracking attendance at conferences and congresses Global Regulatory Policy – Regulatory Sciences:
Academic Planning, Majors, and Careers. Selecting Courses Combine your interests with requirements. Talk with your advisor about your interests and general.
A Brief Overview of Blackboard Backpack. Key Student Benefits: Access Organize Interact.
Ajax Programming Problems and Solutions / Kang, Kyuyoung Daum Communications - R&D Center.
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Event Objectives Become Familiar with Clairvia Web
The Login Page is the first page your customers
Text Name School Name Rep name
ME 142 Engineering Computation I
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Logger, Assert and Invariants
Business Ethics.
Software Design and Development
Updating Your Section’s Website
How to Navigate MyNaropa
CSCE 315 – Programming Studio, Fall 2017 Tanzir Ahmed
Information for SAS Students at UofG
Error Handling.
Troubleshooting GP and MoversSuite
Elizabeth Liner Lab of Things.
Workshop for Programming And Systems Management Teachers
Presentation transcript:

AI Pr0n Maximum Exposure of your debug info! By David “Rez” Graham

Who's this Rez guy, anyway?

What We’re Going to Talk About Crash-Course on Sims AI Developing the tools of Sims Medieval Navigation Tools – Nav Mesh – Path Info – Routing Pane Decision Making Tools – Autonomy Window – Decision Making – Attempted Interactions

Sims AI Crash Course Meta Autonomy – Which lot should I be on? – Based on venue desire tuned by designers – Schedules Local Autonomy – What should I do on my current lot? – Based on Utility provided for each interaction on each object – Utility is based on Commodities, like hunger, energy, social, etc.

Developing Tools Most AI tools were written in C# Gameplay code was in C# AI Tools & Gameplay code were fully integrated – The Good: oGameplay programmers became tools programmers oFast turnaround thanks to.NET functionality oUsed the same data structures and calculation code – The Bad: oTools broke when hitting a breakpoint oCode was spread out Exception to C#: Routing – All routing code was in C++ – Easier to do specialized rendering for paths, routing mesh, etc.

Route Debugging

Nav Mesh & Routing Slots Objects change mesh at runtime Nav Mesh Interactions can also effect mesh Routing Slots

Path Info & Walker States Path Plans Walker State Mover Destination

Routing Pane Start & Goal Positions Failure Reason Routing pane tool toggles Requestor Sim History

Autonomy Window Commodities Autonomy Tool Tabs History

Decision Making: Scores Tab The last chosen interaction is colored in greenThe interaction that would have been chosen this turn is bolded Interactions that fail the Test() function are colored in red

Attempted Interactions Tab Practice Cards was cancelled by Be Chatted To

Attempted Interactions Tab

Final Thoughts Tool Integration is a balancing act Tools should be easy to extend Tools should be interactive –If you can see it, you should be able to change it Color is your friend –Learn from syntax highlighting History is important –History is often the key to understanding why something entered a bad state

Thank You!