TEALS Minecraft Project

Slides:



Advertisements
Similar presentations
Extending Eclipse Kai-Uwe Mätzel IBM OTI Labs Zurich
Advertisements

A Toolbox for Blackboard Tim Roberts
Presenter Muhammad Tarek Madwar Owner And System Architect
TS 313 Multimedia Applications Welcome to TS 313 Multimedia Applications There is no audio lecture associated with this set of introduction slides Refer.
Building New SOA and AJAX- Based Business Applications Mark Barnard R&D Manager – Natural Business Services Software AG (Canada) Inc.
E-commerce Project Erik Zeitler Erik Zeitler2 Lab 2  Will be anounced and scheduled later  We will deploy Java Server Pages on a Tomcat server.
Cornell University Library Instruction Statistics Reporting System Members: Patrick Chen (pyc7) Soo-Yung Cho (sc444) Gregg Herlacher (gah24) Wilson Muyenzi.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
EE-Video Yossi Biton Nir Yakobovski Outline  The concept  Main functionality  Challenges & Solutions  Design considerations Layers Class diagram.
Building and Deploying a Simple Web Application. Tomcat and JSP Tomcat is an application server, commonly used to host JSP applications Applications are.
Big Projects  Part of this class is about picking a cool software project and building it 1.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Section 01Resources1 HSQ - DATABASES & SQL 01 Resources And Franchise Colleges Name :MANSHA NAWAZ room :G 0/32
Project Implementation for COSC 5050 Distributed Database Applications Lab1.
PRODUCT FOCUS 3/31/14 – 4/11/14 INTRODUCTION Our Product Focus for the next two weeks is Microsoft’s Lync. Over 70% of the Fortune 500 have adopted Lync.
Using Journal and Other Tablet PC Tools. Outcomes Software  Intro to Sticky Notes  Intro to Ink Desktop  Intro to using Windows Journal Tools and uses.
Standardize on Team Foundation Server across the enterprise with Teamprise Corey Steffen General Manager
Open Syllabus : A Prototype Tool to Create Structured Syllabi in Sakai Jacques Raynauld – Olivier Gerbé – Emmanuel Vigne HEC Montréal July
CSE4MOD Games Modding About me: Paul Taylor Lecturer in Games Design and Development Currently Studying my PhD in Artificial Intelligence for Games.
Learning Unit Documents and Examples. Learning Units - basic building block of a course For iGETT a Learning Unit consists of –Three parts Instructor.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
M1G Introduction to Database Development 6. Building Applications.
20-753: Fundamentals of Web Programming 1 Lecture 1: Introduction Fundamentals of Web Programming Lecture 1: Introduction.
1 Overview of the Application Hosting Environment Stefan Zasada University College London.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
CS 390 Unix Programming Environment Summer Suchindra Rengan - CS3902 Course Details Instructors Suchindra Rengan – ‘sachin’ ( Section 001)
Nadir Saghar, Tony Pan, Ashish Sharma REST for Data Services.
MIS Week 6 Site:
Minecraftology By Lauren.
Cole David Ronnie Julio. Introduction Globus is A community of users and developers who collaborate on the use and development of open source software,
Alfresco Daeja Integration Yong Qu Chief Solutions Architect
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
Software Deployment & Release 26/03/2015 1EN-ICE.
TEALS MINECRAFT PROJECT Lecture 1: Intro to Minecraft Forge.
COT 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
Generating ADL Descriptions ADL Module for Together 6.x Massimo Marino Lawrence Berkeley National Laboratory.
Representing Tabular Data in Alfresco Share “Smooth Like Butter” Gary Cox Blue Fish Development Group.
Multi player client sever Snake Game Technology : JAVA (swing for user interface and Socket for passing coordinates of snakes, food item and score)
Free minecraft account guide free minecraft account guide.
Introduction to PAD2 Dr. Mark C. Lewis
Getting Started as an EdgeX Developer
Intro To Android Programming
Eclipse Vorto Alexander Edelmann.
How to be a SharePoint Developer
Getting & Running EdgeX Docker Containers
Microsoft Foundation Classes MFC
External Web Services Quick Start Guide
A Simple Introduction to Git: a distributed version-control system
Demo : Introduction to BlueMix Sandhya Kapoor May 28, 2014
CSE 5912 Course Objectives and Requirements
Getting Started as an EdgeX Developer
Flexible Extensible Digital Object Repository Architecture
Flexible Extensible Digital Object Repository Architecture
CMPE419 Mobile Application Development
Tutorial (4): HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 27 WWW and HTTP.
Training Courses.
Introduction to Ansible
GitHub A Tool for software collaboration James Skon
TEALS Minecraft Project
Training 01: Project Lifecycle & Business Technology Analysis
GIL Users Group Meeting
CMPE419 Mobile Application Development
15. Proxy SE2811 Software Component Design
PyWBEM Python WBEM Client: Overview #2
Desktop Mapping: Building Map Books
Plug-In Architecture Pattern
Review and Instructions
Presentation transcript:

TEALS Minecraft Project Connor Hollasch & Steve Hollasch

Mods Server modifications (plugins) Client modifications Used on standard client Modifies current game assets Client modifications Create or modify game assets Only works on servers with the same mod Minecraft has a server-client architecture. Servers host multiple clients. In general, there are many modified servers (some official, some not) that host a variety of multi-user worlds. Clients can be modded, but most servers try to allow only official, unmodified clients. While it would be great for the classroom to share a single world, that requires a server setup in the classroom—a challenge to implement and a challenge to get the school IT staff to allow. This course uses standalone clients, which keeps things simple.

Implementation Everything’s Written in Java A Minecraft world is composed of items, blocks, and entities items — Objects in the Minecraft world blocks — Define the world landscape (in a 3D grid) entities — Players, creatures and robots that move around the world These three items—items, blocks, and entities—are what the Minecraft Modding Project focuses on. Students will create code for each of these three types of objects.

How Minecraft Works – Items Contained within the world Players can “carry” items Types include: food, weapons, armor, tools, or just default item Can be dropped / picked up in world Example items include: potato, gunpowder, gold sword, book These are the simplest kind of items. We will start here and spend a single lab on creating new item types.

How Minecraft Works - Blocks The world is made up of blocks Blocks can be broken or placed Some items place blocks Example blocks include: stone, dirt/grass, leaves, wood, grass Blocks are more complicated than items, and allow for greater variety and programming capabilities. Blocks are addressed in three different labs of increasing complexity.

How Minecraft Works – Entities Entities are placed randomly around the world Entities have autonomous behaviors Can be friends, foes or neutral Entities include: skeleton, sheep, cow, pig, wolf Entities are the most complicated and powerful objects. Entities in this project are all variants of `Robot` entities, which come with a number of useful interfaces. These allow students a lot of flexibility to create cool creatures without getting bogged down in details. Entities are covered in four of the labs.

TEALS Minecraft – Goals Designed to build on everything your APCS students have learned to date. Project is hosted publicly on GitHub, so open to bug reporting, examination, contributions, and other project contributions. We can also host a public wiki for further feedback. Lasts 2–3 weeks. Your actual time will vary. 9 labs total, many more possible. Each lab has summary at the start for the APIs required for that lab, plus multiple phases of implementation for continuing feedback. Lectures provided in PowerPoint and PDF formats. Lab solutions and other instructor-only materials available to instructors in the GitHub APCSA repository (/projects/minecraft/).

TEALS Minecraft — Materials This project uses the Forge modding API A modding package for clients Has the ability to mod server, but not implemented for this curriculum Instructors/Students Distribution Zip file containing source code Designed to work on Eclipse or IntelliJ. Other IDEs possible, but that's up to additional developers/instructors/students. Documentation for lectures, student guides and labs Single File Setup Zip file from public GitHub repo, or as a locally-copied file (about 180MB).

Lab Demo — Tree-Growing Blocks A quick demonstration of lab 5, where students create “seed” blocks that end up growing different types of trees: cube, sphere, cylinder, and cone. We have a demo script that is fairly simple to set up and run to show this. Source code is available on GitHub in the `apcsa` repository, under `projects/minecraft/demo`.

Contact Info Connor Hollasch connor@hollasch.net GitHub: chollasch Steve Hollasch steve@hollasch.net GitHub: hollasch Main TEALS GitHub Org http://tealsk12.github.io Teals-Minecraft Web Site http://tealsk12.github.io/teals-minecraft Teals-Minecraft Instructor Chat on Slack https://tealsk12.slack.com ‘tealsmc’ channel