Creating simple game map

Hi,
I would like to know that what can be used to create a simple game.. VERY SIMPLE game.. not 3D or Java 2D api used i guess..
game
A board with lots of circles (which user can draw) representing territories and links (editable) between the territories representing paths between territories ...
I jsut need to know what can be used to represent a territory? a JLabel? a JPanel?
The state of these objects(territories ) will change over time and so does the links i.e. the paths between the territories.
I just need to draw the map.
Any help will be appreciated.
Thank,

If you are writing an app with that sort of GUI you are going to have to bite the bullet and learn the 2D graphics API: http://java.sun.com/docs/books/tutorial/2d/index.html

Similar Messages

  • Can Flex be used to create simple games?

    Hi. I'm thinking of creating some simple games for children 6 - 10 years of age.The games can be things such as drag-and-drop and multiple choice. I'd like to store the results on a database. Can I use Flex Builder to do this or do you recommend Flash? Can you point me to a resource on this?
    The reason I ask is that I've built web apps using Flex and have some basic experience with Flash. Will building games be very challenging if I have to use Flash? The project in question will start in January and have to be completed by the end of March 2010. Thank you.

    As per your description for games Flex should be fine. It also depends on the skills and experience you have in the technology.

  • How to create simple path map??

    Hello,
    I have robot and I can control by labview, name of robot is Drjaguar and I want to move robot form one point to another point which are fixed.
    Initially thinking is there are no any obstacles in the path.
    Could any one Please guide me that how can I do so that my robot move form one point to another point when I run my vi.
    I am working in laboratory so I want to run my robot in that area.
    I have looked at the path planning vi (https://decibel.ni.com/content/docs/DOC-8983     and    http://zone.ni.com/reference/en-XX/help/372983C-01​/lvrobovi/path_planning_pal/) , but I  didn't get it means I understand logic of  that vi but how can I generate map for my laboratory and how can I mentions this is starting point and this is ending point.
    Please guide me.
    Thank you very much in advance for your time.

    Hi,
    as described in the documents (An introduction to A* Path Planning (using LabVIEW)) you can build a map of your room using an 2D array of non-zero values. How to do that is also shown in the attached VI of the document. Did you try that already? Or do you want a fancier view of the room?
    The VI also shows you how to define a starting and ending point. 
    I think the document provides all the information you are looking for.
    Regards, 
    Michael

  • Create simple map like visio

    I'm using Microsoft Visio to create simple map.Can we do it at ilustrator?
    Thank .
    http://iptek.bintang9.co.cc

    I've created maps in Illustrator.  I'm sure I've gone about it the hard way, but I know it can be done.  There is also a plugin for Illustrator called MAPublisher as well for this particular application.  Although that plugin is quite expensive, so I just do it the hard old fashioned way as mapmaking isn't something that I do often and it's usually more for a graphic then it is for dead-on accurate(although I do try to be as much as I possibly can be).

  • I'm thing of creating a game in flex

    I'm thing of creating a game in flex. It will be a original strategy game based more on playability and thinging rather than sheer Graphics. Could you give me and tips before I start out?
    The game will be based on a collection of circles that group together and by stonger together than apart(for both attacking and defense) but there will also be a map where statigic objectsives will be based. You will have some type of simple base and resource gathering.
    thanks

    Maybe I should be more specific in my requirements. My game will have upto say a maximum of battle 10000 units. What is the best way to store the data of the units efficiently.
    A unit object would have parameters like this
    yLoc
    xLoc
    health
    level
    etc
    thanks

  • Help needed with creating Flash game

    Hello,
    I need to create Flash educational/quiz game for one of my clients. It would be based on concept like these ones for example:
    Example 1
    http://go.ucsusa.org/game/
    Example 2
    http://www.zdravlje.hr/igre/stop-aids/
    Note: when you open this link you will see two text boxs which you first must fill. On the left side text box "Upišite ime" means "Type your name" and right one "Upišite godinu svog rođenja" means "Year of birth"
    What is interesting about this type of games is that they are classic games (for example game Labirint where you have to find way out), but during play pop-up questions starts to appear to test end user knowledge abot certain topic (in example 2 topic is about AIDS/HIV). In case of my client, topic is about Eco environment.
    Here is where my trouble starts;) : I found many useful free tutorials how to create simple flash game (most interesting example I found is this one http://www.strille.net/tutorials/snake/index.php)  BUT I dont know how make that system of popup questions appear during game similar to Example 1 and Example 2?
    Any help is appreciated and thanks in advance for promt reply.
    Greetings,
    Adnan

    Update: I have just read all instructions in Snake tutorial which helped be better realize how Snake game works.
    a) This is what I plan to realize for my client:
    1. Snake game which end users will play and during play pop-up/quiz quesions will appear on topic Eco environment;
    2. For example when end user earns 50 points he must answer some of the random questions like "Q:How many ton of waste are produced by US livestock each year" with three answers A1: "1 milion" A2: "1 bilion" A3: "2 bilion" and after user scores 100 points then another question pops up and so on. This is all true if all answers are correct but in case he answer some question wrong than game can start from begining or another solution could be he looses -50 or -100 points.
    3. At the end, user which gains most points wins.
    b) This is what I have done till now:
    I have this file http://www.strille.net/tutorials/snake/snakeGameWithHighscore.zip which I partly understand how it works with my Flash knowladge.
    All functions and main game engine is in layer code:
    "// Snake Game by Strille, 2004, www.strille.net
    blockSize = 8;   // the block width/height in number of pixels
    gameHeight = 30; // the game height in number of blocks
    gameWidth  = 45; // the game width in number of blocks
    replaySpeed = 1;
    SNAKE_BLOCK = 1; // holds the number used to mark snake blocks in the map
    xVelocity = [-1, 0, 1, 0]; // x velocity when moving left, up, right, down
    yVelocity = [0, -1, 0, 1]; // y velocity when moving left, up, right, down
    keyListener = new Object(); // key listener
    keyListener.onKeyDown = function() {
        var keyCode = Key.getCode(); // get key code
        if (keyCode > 36 && keyCode < 41) { // arrow keys pressed (37 = left, 38 = up, 39 = right, 40 = down)...
            if (playRec) {
                if (keyCode == 37 && replaySpeed > 1) {
                    replaySpeed--;
                } else if (keyCode == 39 && replaySpeed < 10) {
                    replaySpeed++;
            } else if (game.onEnterFrame != undefined) { // only allow moves if the game is running, and is not paused
                if (keyCode-37 != turnQueue[0]) { // ...and it's different from the last key pressed
                    turnQueue.unshift(keyCode-37); // save the key (or rather direction) in the turnQueue
        } else if (keyCode == 32) { // start the game if it's not started (32 = SPACE)
            if (!gameRunning || playRec) {
                startGame(false);
        } else if (keyCode == 80) { // pause/unpause (80 = 'P')
            if (gameRunning && !playRec) {
                if (game.onEnterFrame) { // pause
                    delete game.onEnterFrame; // remove main loop
                    textMC.gotoAndStop("paused");
                } else { // exit pause mode
                    game.onEnterFrame = main; // start main loop
                    textMC.gotoAndStop("hide");
    Key.addListener(keyListener);
    function startGame(pRec) {
        x = int(gameWidth/2); // x start position in the middle
        y = gameHeight-2;     // y start position near the bottom
        map = new Array(); // create an array to store food and snake
        for (var n=0;n<gameWidth;n++) { // make map a 2 dimensional array
            map[n] = new Array();
        turnQueue = new Array(); // a queue to store key presses (so that x number of key presses during one frame are spread over x number of frames)
        game.createEmptyMovieClip("food", 1); // create MC to store the food
        game.createEmptyMovieClip("s", 2); // create MC to store the snake
        scoreTextField.text = "Score: 0"; // type out score info
        foodCounter = 0; // keeps track of the number of food movie clips
        snakeBlockCounter = 0; // keeps track of the snake blocks, increased on every frame
        currentDirection = 1; // holds the direction of movement (0 = left, 1 = up, 2 = right, 3 = down)
        snakeEraseCounter = -1; // increased on every frame, erases the snake tail (setting this to -3 will result in a 3 block long snake at the beginning)
        score = 0; // keeps track of the score
        ticks = lastRec = 0;
        recPos = recFoodPos = 0;
        playRec = pRec;
        if (!playRec) {
            textMC.gotoAndStop("hide"); // make sure no text is visible (like "game over ")
            highscores.enterHighscoreMC._visible = false;
            statusTextField.text = "";
            recTurn = "";
            recFrame = "";
            recFood = "";
            game.onEnterFrame = main; // start the main loop
        } else {
            if (loadedRecordingNumber != -1) {
                var n = getLoadedRecordingNumberHighscorePos(loadedRecordingNumber);
                statusTextField.text = "Viewing " + highscores[n].name.text + "'s game (score " + highscores[n].score.text + ")";
            } else {
                statusTextField.text = "Viewing your game";
            game.onEnterFrame = replayMain; // start the main loop
        placeFood("new"); // place a new food block
        gameRunning = true; // flag telling if the game is running. If true it does not necessarily mean that main is called (the game could be paused)
    function main() { // called on every frame if the game is running and it's not paused
        if (playRec) {
            if (ticks == lastRec+parseInt(recFrame.charAt(recPos*2)+recFrame.charAt(recPos*2+1), 36)) {
                currentDirection = parseInt(recTurn.charAt(recPos));
                lastRec = ticks;
                recPos++;
        } else if (turnQueue.length) { // if we have a turn to perform...
            var dir = turnQueue.pop(); // ...pick the next turn in the queue...
            if (dir % 2 != currentDirection % 2) { // not a 180 degree turn (annoying to be able to turn into the snake with one key press)
                currentDirection = dir; // change current direction to the new value
                recTurn += dir;
                var fn = ticks-lastRec;
                if (fn < 36) {
                    recFrame += " "+new Number(fn).toString(36);
                } else {
                    recFrame += new Number(fn).toString(36);
                lastRec = ticks;
        x += xVelocity[currentDirection]; // move the snake position in x
        y += yVelocity[currentDirection]; // move the snake position in y
        if (map[x][y] != SNAKE_BLOCK && x > -1 && x < gameWidth && y > -1 && y < gameHeight) { // make sure we are not hitting the snake or leaving the game area
            game.s.attachMovie("snakeMC", snakeBlockCounter, snakeBlockCounter, {_x: x*blockSize, _y: y*blockSize}); // attach a snake block movie clip
            snakeBlockCounter++; // increase the snake counter
            if (map[x][y]) { // if it's a not a vacant block then there is a food block on the position
                score += 10; // add points to score
                scoreTextField.text = "Score: " + score; // type out score info
                snakeEraseCounter -= 5; // make the snake not remove the tail for five loops
                placeFood(map[x][y]); // place the food movie clip which is referenced in the map map[x][y]
            map[x][y] = SNAKE_BLOCK; // set current position to occupied
            var tailMC = game.s[snakeEraseCounter]; // get "last" MC according to snakeEraseCounter (may not exist)
            if (tailMC) { // if the snake block exists
                delete map[tailMC._x/blockSize][tailMC._y/blockSize]; // delete the value in the array m
                tailMC.removeMovieClip(); // delete the MC
            snakeEraseCounter++; // increase erase snake counter   
        } else { // GAME OVER if it is on a snake block or outside of the map
            if (playRec) {
                startGame(true);
            } else {
                gameOver();
            return;
        ticks++;
    function replayMain() {
        for (var n=0;n<replaySpeed;n++) {
            main();
    function gameOver() {
        textMC.gotoAndStop("gameOver"); // show "game over" text
        delete game.onEnterFrame; // quit looping main function
        gameRunning = false; // the game is no longer running
        enterHighscore();
    function placeFood(foodMC) {
        if (playRec) {
            var xFood = parseInt(recFood.charAt(recFoodPos*3)+recFood.charAt(recFoodPos*3+1), 36);
            var yFood = parseInt(recFood.charAt(recFoodPos*3+2), 36);
            recFoodPos++;
        } else {
            do {
                var xFood = random(gameWidth);
                var yFood = random(gameHeight);
            } while (map[xFood][yFood]); // keep picking a spot until it's a vacant spot (we don't want to place the food on a position occupied by the snake)
            if (xFood < 36) {
                recFood += " "+new Number(xFood).toString(36);
            } else {
                recFood += new Number(xFood).toString(36);
            recFood += new Number(yFood).toString(36);
        if (foodMC == "new") { // create a new food movie clip
            foodMC = game.food.attachMovie("foodMC", foodCounter, foodCounter);
            foodCounter++;
        foodMC._x = xFood*blockSize; // place the food
        foodMC._y = yFood*blockSize; // place the food
        map[xFood][yFood] = foodMC; // save a reference to this food movie clip in the map
    //- Highscore functions
    loadHighscores();
    enterHighscoreKeyListener = new Object();
    enterHighscoreKeyListener.onKeyDown = function() {
        if (Key.getCode() == Key.ENTER) {
            playerName = highscores.enterHighscoreMC.nameTextField.text;
            if (playerName == undefined || playerName == "") {
                playerName = "no name";
            saveHighscore();
            Key.removeListener(enterHighscoreKeyListener);
            Key.addListener(keyListener);
            highscores.enterHighscoreMC._visible = false;
            loadedRecordingNumber = -1;
            startGame(true);
    function enterHighscore() {
        if (score >= lowestHighscore) {
            highscores.enterHighscoreMC._visible = true;
            highscores.enterHighscoreMC.focus();
            Key.removeListener(keyListener);
            Key.addListener(enterHighscoreKeyListener);
        } else {
            loadedRecordingNumber = -1;
            startGame(true);
    function getLoadedRecordingNumberHighscorePos(num) {
        for (var n=0;n<10;n++) {
            if (num == highscores[n].recFile) {
                return n;
    function loadHighscores() {
        vars = new LoadVars();
        vars.onLoad = function(success) {
            for (var n=0;n<10;n++) {
                var mc = highscores.attachMovie("highscoreLine", n, n);
                mc._x = 5;
                mc._y = 5+n*12;
                mc.place.text = (n+1) + ".";
                mc.name.text = this["name"+n];
                mc.score.text = this["score"+n];
                mc.recFile = parseInt(this["recFile"+n]);
            lowestHighscore = parseInt(this.score9);
            if (!gameRunning) {
                loadRecording(random(10));
            delete this;
        if (this._url.indexOf("http") != -1) {
            vars.load("highscores.txt?" + new Date().getTime());
        } else {
            vars.load("highscores.txt");
    function loadRecording(num) {
        vars = new LoadVars();
        vars.onLoad = function(success) {
            if (success && this.recTurn.length) {
                recTurn = this.recTurn;
                recFrame = this.recFrame;
                recFood = this.recFood;
                startGame(true);
            } else {
                loadRecording((num+1)%10);
                return;
            delete this;
        loadedRecordingNumber = num;
        if (this._url.indexOf("http") != -1) {
            vars.load("rec"+loadedRecordingNumber+".txt?" + new Date().getTime());
        } else {
            vars.load("rec"+loadedRecordingNumber+".txt");
    function saveHighscore() {
        sendVars = new LoadVars();
        for (var n in _root) {
            if (_root[n] != sendVars) {
                sendVars[n] = _root[n];
        returnVars = new LoadVars();
        returnVars.onLoad = function() {
            if (this.status == "ok") {
                loadHighscoresInterval = setInterval(function() {
                    loadHighscores();
                    clearInterval(loadHighscoresInterval);
                }, 1000);
            delete sendVars;
            delete this;
        sendVars.sendAndLoad("enterHighscore.php", returnVars, "POST");
    function startClicked() {
        if (!gameRunning || playRec) {
            if (highscores.enterHighscoreMC._visible) {
                Key.removeListener(enterHighscoreKeyListener);
                Key.addListener(keyListener);
                highscores.enterHighscoreMC._visible = false;
            startGame(false);
    function viewGame(lineMC) {
        loadRecording(lineMC.recFile);
        statusTextField.text = "Loading " + lineMC.name.text + "'s game...";
    Now what is left to do is somehow to iclude educational quiz in this game/code. First idea that came to me is same thing Ned suggested: to create some unique movie clip which would contain all data/questions lined up but main problem for me is how to "trigger" that movie clip to play only AFTER end user clicks on "Start game" or SPACE to restart? Not sure how to solve this issue?

  • Simple game design,

    so I have a basic understanding of java, I took a class on it this spring and did well. I am wanting to make a simple game, a single picture, a map, that is clicked.
    based on the location clicked, the player gets an item. this is an online game.
    I am going to use SQL for this game on the back end. it will have a db with two tables, users, and map.
    users will have user name, user ID, items owned, tools, and searched today.
    map Im not quite sure about yet.
    so basically, Im trying to figure out how I should go about this. Im not quite ready to hack code yet, I need to get a good plan together and make sure I go about this correctly.
    can I open this for discussion and get some help on designing this. Im trying to stay really very simple, so as not to undertake too much.
    this is my outline right now:
    login: a screen with name and pass fields, an ok button. when the button is clicked, the program checks the db for the name, and verifies the password, if everything is in order, goto the account screen, possibly a cookie or session of some sort is set.
    account screen: show the username, items owned and number of each, any tools or special items owned. button to logout, button to goto map. radio buttons on the tools to determine which one, if any, is equipped. there should also be a special area near the top that shows what item was found on the previous day.
    map screen: this is a small image of a map. the user clicks and shows a pin placed, as well as any other pins currently on the map for the day. a search button that when clicked, locks in the location untill the end of the day.
    the user can search one location per 24 hour period, server time.once a location is picked, its locked in till server is rolled to new day. based on the location, and the tool selected, the player gains an item, these will be used for creating items and such in a later game that is tied to the IP.
    pretty simple, login, pick a tool, pick a location, complain in the forum that you can't find good items, and that the main game isnt done, move on till tomorrow :)
    I need to go over each part in detail and do this right. I should mostly be SQL with a graphic frontend, which as of now Im choosing Java for, so this can run in a web browser. Im also considering PHP, but I fear it wont be dynamic enough. Flash is my other choice. I would like to get a good idea of what I need to do for each aspect before I make it. The screens I will make in netBeans, probably using Swing, and all of my actual logic will be in click events.
    Help me out guys, I need to talk about this step by step with someone.

    lord_midnight wrote:
    ]morgair: I have done some small projects here n there, mostly just demos, I am almost finished with a retro styled platformer, just placing tiles and entities, finishing up the art, code is done except for a few custom routines for a boss. this project is actually pretty small, other than being online, its a good choice for a first game type of project. Im confident it is within my skillset.Thank you for the reply, I was unsure what level of help you needed, many on here come in and have never done any programming before, let alone, an actual game on-line or otherwise. It's nice to hear where you're at.
    ]mrw: yeah, its not so much that I have a problem, I just want to make sure I think everything through before I start. Im trying to get a good grasp of what Im doing, so I don't have very many problems, Im sure I'll have a few though, somehow no matter how much I plan, something goes awry.
    ]soultech2012: Im actually in college, I took java this spring, and Im taking advanced java as soon as its offered online. still, its not so much instruction I want, as discussion.
    maybe I was not being so clear, Im not looking for anyone to write code, or tell me what to do, I want to talk with people, Im sure I will have direct questions at some point, but right now, I want to think it through. If anything, another set of eyes looking at the design, pointing out possible snags or logic problems. its pretty simple as far as games go, I did some prototyping in flash last night, I think this will be pretty easy. does anyone see any serious problems in the design ?
    I think it will make a nice little game, its not meant to take much time out of the players day, just a 2-5 minute jaunt into my website. login, pick a spot on the map, select a tool to use to help gather items, and slowly over several weeks, have accumulated a collection of goods for a game Im doing at a later date.
    getting the x,y will be easy, I have done a couple of very simple apps that interact with SQL,
    the only real logic parts of this are some ifs or a switch, and adding to a field in SQL.
    getting pixel color might be tricky, it was easy in flash, and Im pretty sure I saw a similar function last time I browsed the javadocs, so Im not too concerned.I like to use getRGB and setRGB from a BufferedImage.
    honestly, I looked around and I can all but make this in javascript and PHP/SQL, java might be overkill.
    anyone see any obvious ways to cheat the game ?If you store any logic on the client side they can easliy find and modify it, that way they can have a super character or all of the items. Runescape is perfect example of this, they run client server and there are groups that have made their own client to cheat with.
    am I underestimating the complexity of the task ? I have plenty of time to work on it, no hurry, but Im hoping to have something on the site within the next month or so.That is doable, If you are careful in your implementation, you can build a basic game engine and then work on map and support making for facilitate different levels.
    I need to make a list of terrains, the colors Im using for them, and items found, and I need to draw out a table that Im using to plot out the sql.
    Im taking PHP/SQL this fall, Im starting to get the hang of it, and I have a pretty good grasp of basic programming concepts. this should be well within reach, honestly, its glorified tic-tac-toe, or match-findingThe big things that seem to pop up for people are:
    Picking up items
    putting down an item
    weilding an item
    using an item
    combat
    breaking off combat
    automatic path plotting (least cost algo from map)
    frequency of random events
    regeneration of items
    regeneration of health
    real language interaction with characters (pattern matching for content)
    Just remember: choose what you want and don't let the scope of your game creap or you'll have a bunch of code that has no implementation end in sight. Keep your compiles short and changes departmentalize so you can have running code that works from one feature to another. I see a lot of people--experirenced too--that literally throw hundreds of lines of code out and then try to debug it after they make changes thorughout the stable code base to allow integration of the new feature; this can be very daunting, keep it as simple as possible to integrate new features--small steps are good.
    thanks for the input, and comments are welcome, best I can offer is thanks and bonus tools in the game once its done, so thank you.

  • How to design a simple game?

    my programming skills are pretty much limited and as most beginners i was coding simple things by build and fix method, but wanna try to do it properly so i'm looking for help. i've been trying to design simple Connect4 game and as i'm coding in java i taken oo aproach. i'll explain exactly steps i've taken and i'd really appreciate if someone familiar with oo design and software engineering in all would point out what i'm douing wrong and if theres is anything ok with my approach.
    1. i've started with use-case modelling and created first scenario
    scenario created:
    1. user clicks start button
    2. player1 is presented with empty board and asked to insert token in column of his choice
    3. player1 clicks on column where he wants to insert token. token drops (appears) in chosen column
    4. player2 is asked to insert token into column
    5. player2 clicks on column where he wants to insert token
    token drops (appears) in chosen column
    6. steps 2-5 are repeated
    7. player1 connects 4 in a row and information is displayed player1 has won
    i know scenarios should include every possible way of utilizing the software but it gives countless possbilities and i was wonder if scenario for every single way of utilizing the product should be created or maybe not? i suppose that number of scenarios depends on how the product is complicated but in case of very simple game like connect4 aproximately how many scenarios would be expected?
    2. having above scenario ready i've used noun extraction method to extract candidate classes and so i have:
    players inserts tokens into the board consisting of 7 rows and 6 columns. players trying to connect their four tokens in a row (horizontally, vertically or diagonally) to win.
    classes extracted:
    player
    token
    board
    row
    column
    assuming that state of token, row, column will not change, i skipped those and left only two classes board and player. after a while i also noticed that another class named connect4 would be needed to put it all together.
    3. having one scenario ready and classes extracted i went directly to drawing sequence state diagram which i've put here
    4. next i draw detailed class diagram (here) and more or less decided on methods for every class
    5. then i started writing pseudocode but while writing i'm finding myself adding additional methods, variables etc and keep changing design while coding, what dosent seem to be a good practice. i was wonder how it works in real life and what is the chance to get application designed correctly for the first time, i mean extract the classes with methods etc.
    to be honest i got lost a little cause according to shach's book i missed state diagram and few other things and dont know how important those bit are in real life and designing real software. as i said i'm real beginner in software engineering and any help would be much appreciated. than you very much in advance for any comments regarding my design and help

    i know scenarios should include every possible way of
    utilizing the software but it gives countless
    possbilities and i was wonder if scenario for every
    single way of utilizing the product should be created
    or maybe not? i suppose that number of scenarios
    depends on how the product is complicated but in case
    of very simple game like connect4 aproximately how
    many scenarios would be expected?Very few. This program is small and the interaction
    with the user is minimal.
    2. having above scenario ready i've used noun
    extraction method to extract candidate classes and so
    i have:
    player
    token
    board
    row
    column
    assuming that state of token, row, column will not
    change, i skipped those and left only two classes
    board and player. after a while i also noticed that
    another class named connect4 would be needed to put it
    all together.Things like "player" or "person" are rarely if ever real classes.
    Imagine you were designing the control program for an
    elevator. Just because a person clicks on the button for
    a floor doesn't mean you make them a class in your design.
    Likewise, just because a player clicks on a column doesn't
    mean you make them a class.
    In reality, this program is small enough for one major class,
    the gameboard itself. You may have an enum for the token
    color but that's about it.
    What can you do with this gameboard? Not much:
    1. Add a token to column X.
    2. Check for a win.
    3. Obtain a copy of the board.
    Your gameboard only has to maintain the state of the
    board and allow you to add a token or check for a win.
    Your class to display the gameboard and accept user
    input will probably be larger than anything else.
    You can write this program with only two classes. The
    gameboard and the display.
    3. having one scenario ready and classes extracted i
    went directly to drawing sequence state diagram which
    i've put hereOverkill for a program of this size.
    4. next i draw detailed class diagram (here) and more
    or less decided on methods for every classAlso overkill for a program of this size. Unless this is
    an assignment at work or school, all of these documents
    are unnecessary and likely to be several times larger than
    your entire program.
    5. then i started writing pseudocode but while writing
    i'm finding myself adding additional methods,
    variables etc and keep changing design while coding,
    what dosent seem to be a good practice. i was wonder
    how it works in real life and what is the chance to
    get application designed correctly for the first time,
    i mean extract the classes with methods etc.If you find your design doesn't work while writing code
    then yes, you should go back and change your design
    document. This isn't too big of a sign of disaster unless
    you need to step back another step and change the
    requirements document. That's usually a sign you
    really messed up.
    By all means, go back and change the design document
    if you need to before you finish coding.
    In this case however, its probably overkill.
    to be honest i got lost a little cause according to
    shach's book i missed state diagram and few other
    things and dont know how important those bit are in
    real life and designing real software. as i said i'm
    real beginner in software engineering and any help
    would be much appreciated. than you very much in
    advance for any comments regarding my design and helpIts next to impossible to go through a structured design
    process on a project this small while working by yourself.
    You really need a bigger project with multiple team members
    to see how its all supposed to play out.
    Projects of this size are written almost as soon as you start
    thinking about them and any documentation you generate will
    dwarf your source code printout.

  • Simple java-mapping

    can i have a file2file scenario which uses simple java-mapping. As i m new to Java, jus wanna learn how it happens.
    I wanna know how to code the Java mapping .....and how to utilize it in the Interface Mapping.....
    I know a bit of DOM parsing..

    Hi,
    see the below links
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
    DOM parser API
    http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
    Check this blog on Mapping:
    /people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
    Also, check this thread for more info,
    Different types of Mapping in XI
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.highlightedcontent?documenturi=%2flibrary%2fxi%2fxi-design_configuration%2ffileValidationsinSAPXI-ACaseStudy.pdf
    http://www.cafeconleche.org/books/xmljava/chapters/ch09.html
    http://www.cafeconleche.org/books/xmljava/chapters/ch06.html
    Check these blogs for reference..
    /people/udo.martens/blog/2006/08/23/comparing-performance-of-mapping-programs
    /people/ravikumar.allampallam/blog/2005/06/24/convert-any-flat-file-to-any-idoc-java-mapping
    java mapping /people/amol.joshi2/blog/2006/03/10/think-objects-when-creating-java-mappings
    Regards
    Chilla

  • How do I create a Bing Maps route that stays on a U.S. Route number for tourism/scenic purposes?

    How do I create a Bing Maps route that stays on a U.S. Route number for tourism/scenic purposes?  I want to go from point a to point b while staying as much as possible on a US route number, such as US 6 or US 20 or US 101 or US 40, (and the defunct
    US 66).
    Instead of dragging points back to the road every time it pulls you onto a faster route, can I just say "use RT20 as much as possible?"
    Or as simple as choosing a point on a US Route and selecting the entire length as a trip.   The idea is to plan trips throughout the USA avoiding interstates, and staying on the actual original routes.
    I am posting this here at request from Microsoft Support Engineer as a more complex request.

    This is already on the feature request list from one other person. This would take a lot of work to implement from a technical side of things. given that only one other person has requested this, there isn't much of a business case for this yet.
    http://rbrundritt.wordpress.com

  • Simple game guidance needed

    Hi all,
    I could use a little guidance with a project I am currently doing at college. We have to use Java / NetBeans 4.0 to create a game where some targets appear and the player gains points by clicking on them. I have created the vast majority of the code and it works reasonably well so far.
    The part I need help with is that I would like my targets to move around, probably using threads. Currently my targets are JButtons in a JPanel, but I cannot get them to move. I have tried using setLocation() and setBounds() to no avail. I have tried different layouts such as Null and Absolute, but that didn't make much difference.
    So I have been playing around with the idea of using sprites, perhaps.
    Does anybody have any suggestions to offer? I have been digging around looking for examples that I can work from that I could perhaps re-work for my own needs, but none of them seems to have what I need. Perhaps someone could mention classes / functions that I ought to be using?

    I would use Graphics 2D rather than Swing.I'm no gaming expert but I'm not sure why you would use Graphics2D for this. Sure I guess if you are moving squares or circles around the screen you could do this. But what if you are using actual images, like an image of Duke or Bart Simpson? How would you draw these images using graphics?
    I would like my targets to move around, probably using threads.Anyway, for the animation, if you do use images you should use a Swing Timer. Here is a simple example: [http://forums.sun.com/thread.jspa?forumID=57&threadID=631379]

  • DVD simple games??

    HI can anyone tell me if it's possible to write simple games for children in DVD studio Pro or do I need to do them in other software first?
    Does anyone know if there are books or tutorials on this subject?
    I am not a programmer so it would only be the most basic of games I would want to create.
    Thanks

    OK - let's have a think about the HP example, but in a more simple way.
    Imagine a menu screen which has three potion buttons and three jug buttons. The user first selects a potion and the DVD records the button selection, returning the user to the same menu. They then select a jug and this choice is also recorded. If potion 1 has a value of '1', and jug 1 has a value of '10' then the ability to say the 'correct' choice has been made is done by simply adding the potion values and the jug values. A result of '11' will show a 'well done' clip, whereas any other result will give a 'you failed' clip. You can use more than one 'well done' or 'you failed' clips, selecting them to play at random to keep the user interested.
    All of this is done with two scripts - the first records the potion choice into a GPRM (by tracking the button number using SPRM8) and looks to see if you need to go back to the menu (i.e. no jug has been chosen). It then adds on the jug value when that button has been selected (so far, one menu, one script). When this has been done the total value is passed to the second script. Depending on what it finds, a random selection of 'right' or 'wrong' clips is used to display back to the screen... the viewer gets their visual feedback.
    If you wanted to keep a score, you'd need to add a new script which simply tracked how many 'right' clips were played throughout the duration of the game.
    None of this is actually very hard - the tricky bit is setting up the menus and clips and understanding the flow of the logic that needs to be applied. You could, for example, have differnt menus for the jugs and the potions. Selecting a potion then plays a short clip which zooms in to the view and then jumps to a new menu which has the selected potion in view ready to pour into a jug. Selecting a jug then activates a clip which zooms in to see the poition being poured... and a result (explosion, pleasant green potion, black faced Ron Weasley... whatever). This takes a few more menus and short clips to build, and you'd need to allow for every combination of potion and jug. The more exciting you want it to be, the more intense the menu and clip creation will get. The scripting will stay relatively easy!

  • Create a game , how? what to use?

    Hi,
    I would like to create a game. The only one what I know is: I want to make (with my wife) and I want to be distributed over internet. I would like to make it free playable and some custom items could be bought from shop.
    I am very familiar with java (desktop) programming, I have a 3d project finished in java, my wife could be a designer, artist.
    I would like to develop around 2-3, max 6 months, and I would like to earn around 1000-2000 usd / month after a period of stable release. What to do?
    I like the mmo games specially the 3D strategy like: [allods online|http://allods.gpotato.com/] . For my wife the best is a pet care game like superpoke .
    Today I saw a demo for a 3d java library it was an rpg game ( others was implemented in C or idk what , maybe assembly some parts). This kind of games in my mind it will take at least 6 months development to become basic playable and if anybody would give a donate / buy something, but a real estimate is for 10 developers and 1 year to satisfy somebody(at allods are 100 names at credits and had a budget of 12 mill usd). So here leak of HR, time, money. I am right? Have you other idea?
    The pet care games are simpler, but are implemented in Flash. I am wondering if I could find something similar like Flash in Java, JavaFX, or a Swing application launched with webstart? (a jnlp file at web page)
    The development with Flash requires a learning time for me, and is important expense the 1000 usd or more for flash development license, which I would invest only if I have no other choice ( better invest this money on marketing, advertising).
    The third part of games are web based(php), rich javascript on it, like : gladiatus ,travian what java alternative? simple JSP+struts?
    As hardware, I think I meet the requirement for a server at least on the beginning.
    What to do, with what technologies?

    If you're not just doing this for fun, and you expect to earn money from it, then you shouldn't be worrying about the technologies at this point. The very first thing you should do is look into the distribution model. Are there any services that distribute Java-based games, collect money from players, and distribute the earnings to the developers? If not, you'd have to build all that yourself, and even if it were a perfect system you might find it impossible to find users. Given what you've said (you want to earn relatively modest income from it, and you apparently don't have a huge advertising budget), rolling your own distribution system probably isn't an option.
    It's likely that all the technical decisions will be driven by the distribution model. For example, you might find that the best way to create and distribute your game is with XBN (the Microsoft thing; I might have the acronym wrong), and that might require C++ and specific XBN libraries. (I don't know, but you should investigate.)
    There may be sites out there (Pogo.com is one, I think) that will distribute a Java-based game, but I have no idea what their terms are. You should investigate and make sure the terms are palatable before you start coding. I suppose you could do a first pass in Java right away, and then if the distribution model you choose doesn't use Java, you could re-write the code in whatever language you have to use for the distribution system; that would mean you're working with prototypes which is fine but you should be aware of this when you're going in.
    Keep in mind that Facebook games are really hot right now; that might affect what you want to create, and whether people want to distribute what you create.

  • Creating breakout game. Need help with thread starting.

    Howdy. As the title says, I've got an assignment to make a breakout game. So far it's going alright, but I've run into a rather large snag...I can't get it to animate :P I've got my main applet, then I created a class heirarchy for the paddle, ball, and brick objects. For this question, lets just focus on the ball object.
    This is my applet code so far (it is not even close to being done, so don't laugh :P )
    import java.awt.*;
    import javax.swing.*;
    import java.util.*;
    * Class BreakoutApplet - Plays a simple game of Breakout.
    * @author Kris Nelson
    * @version November 10, 2004
    public class BreakoutApplet extends JApplet implements Runnable
        protected Brick brick; // creates an object of class brick
        protected Ball ball; // creates an object of class ball
        protected Paddle paddle; // creates an object of class paddle
        protected boolean running; // tells the program whether or not the thread is running
        protected ArrayList brickArray = new ArrayList(); // stores all the bricks in the game
        protected Thread timer; // the thread which controls the animation for the applet
        * Called by the browser or applet viewer to inform this JApplet that it
        * has been loaded into the system. It is always called before the first
        * time that the start method is called.
        public void init()
            // this is a workaround for a security conflict with some browsers
            // including some versions of Netscape & Internet Explorer which do
            // not allow access to the AWT system event queue which JApplets do
            // on startup to check access. May not be necessary with your browser.
            JRootPane rootPane = this.getRootPane();   
            rootPane.putClientProperty("defeatSystemEventQueueCheck", Boolean.TRUE);
            createBricks(); // creates the games array of bricks
            ball = new Ball(400, 400, 2, 2); // sets the values for the ball
            paddle = new Paddle(300, 660, 2); // sets the values for the paddle
            // !!!!!!! have tried placing ball.start() here
        * Paint method for applet.
        * @param  g   the Graphics object for this applet
        public void paint(Graphics g)
            // draws the background, border, and all the games objects
            g.setColor(Color.lightGray); // sets the drawing color to light gray
            g.fillRect(0, 0, 600, 700); // displays the game screens background
            displayBorder(g); // displays the game screens border
            displayBricks(g); // displays the array of bricks
            ball.display(g); // displays the ball
            paddle.display(g); // displays the paddle
        * Creates the games array of bricks
        public void createBricks()
            int colorNumber = 1; // starts the color of the bricks at orange
            double yPosition = 100; // starts the bricks y screen position at 100
            for(int i = 0; i < 4; i++)
                double xPosition = 12; // starts the bricks x screen position at 12
                for(int j = 0; j < 8; j++)
                    if(colorNumber == 0)
                        colorNumber = 1; // sets the color of the bricks to orange
                    else
                        colorNumber = 0; // sets the color of the bricks to green
                    brickArray.add(brick = new Brick(xPosition, yPosition, colorNumber)); // adds a brick to the current container in the brick array
                    xPosition = xPosition + brick.getWidth(); // move the bricks x screen position to the next column
                yPosition = yPosition + brick.getHeight(); // moves the bricks y screen position to the next row
                if(colorNumber == 0)
                    colorNumber = 1; // sets the color of the bricks to orange
                else
                    colorNumber = 0; // sets the color of the bricks to green
        * Displays the game screens border
        * @param  g   the Graphics object for this applet
        public void displayBorder(Graphics g)
            g.setColor(Color.black); // sets the drawing color to black
            g.fillRect(0, 0, 600, 24); // draws a border on the top of the screen
            g.fillRect(0, 0, 12, 700); // draws a border on the left of the screen
            g.fillRect(588, 0, 12, 700); // draws a border on the right of the screen
        * Displays the array of bricks on the screen
        * @param  g   the Graphics object for this applet
        public void displayBricks(Graphics g)
            Brick currentBrick; // holds the brick data from the current ArrayList container
            for(int i = 0; i < 32; i++)
                currentBrick = (Brick)(brickArray.get(i)); // grabs the brick data from the current ArrayList container
                currentBrick.display(g); // displays the current brick
        * Called by the browser or applet viewer to inform this JApplet that it
        * should start its execution. It is called after the init method and
        * each time the JApplet is revisited in a Web page.
         public void start()
             if(timer == null)
                 timer = new Thread(this); // creates a new object of type Thread
                 timer.start(); // starts the new thread
                 running = true; // tells the program that the new thread is running
        * Runs the code that controls the animation
        public void run()
            do{
                repaint(); // redraws the screen
                try{
                    timer.sleep(100); // puts the thread to sleep for 100 milliseconds
                } catch(InterruptedException e) {running = false;}
                // !!!!!!! have tried placing ball.start() here
            } while(running);
            timer = null; // destroys the timer thread
        * Called by the browser or applet viewer to inform this JApplet that
        * it should stop its execution. It is called when the Web page that
        * contains this JApplet has been replaced by another page, and also
        * just before the JApplet is to be destroyed.
        public void stop()
            running = false; // tells the program that the thread is now done
    }These are the bits of code for my class heirarchy, just to (hopefully) make it easier to follow.
    import java.awt.*;
    * The parent class of all the games objects.
    * @author Kris Nelson
    * @version November 9, 2004
    public class Sprite
        protected double screenX, screenY; // stores the x and y location of the object
        * Constructor for objects of class Sprite
        * @param  xPosition   the initial x screen position
        * @param  yPosition   the initial y screen position
        public Sprite(double xPosition, double yPosition)
            screenX = xPosition; // sets the initial x screen position
            screenY = yPosition; // sets the initial y screen position
        * Sets new x and y screen locations for an object
        * @param  newX   the new x screen location
        * @param  newY   the new y screen location
        public void setScreenXY(double newX, double newY)
            screenX = newX; // sets the new x screen location
            screenY = newY; // sets the new y screen location
        * Sends back the current x screen location
        * @return     the current x screen location
        public double getScreenX()
            return screenX; // returns the current x screen location
        * Sends back the current y screen location
        * @return     the current y screen location
        public double getScreenY()
            return screenY; // returns the current y screen location
    import java.awt.*;
    * Parent class of any game object that moves.
    * @author Kris Nelson
    * @version November 9, 2004
    public class MovingSprite extends Sprite implements Runnable
         protected double speedX, speedY; // stores the speed of an object in the x and y directions
         protected Thread timer; // the thread which controls animation for all moving objects
         protected boolean running; // tells the program whether or not the thread is running
         * Constructor for objects of class MovingSprite
         * @param  xPosition   the initial x screen position
         * @param  yPosition   the initial y screen position
         * @param  xSpeedValue   the speed in the x direction
         * @param  ySpeedValue   the speed in the y direction
         public MovingSprite(double xPosition, double yPosition, double xSpeedValue, double ySpeedValue)
              super(xPosition, yPosition); // passes the initial screen positions to Sprite
              speedX = xSpeedValue; // sets the speed in the x direction
              speedY = ySpeedValue; // sets the speed in the y direction
         * Sends back the speed in the x direction
         * @return     the speed in the x direction
         public double getSpeedX()
             return speedX; // returns the speed in the x direction
         * Sends back the speed in the y direction
         * @return     the speed in the y direction
         public double getSpeedY()
             return speedY; // returns the speed in the y direction
         * Starts the thread in order to start animation
         public void start()
             if(timer == null)
                 timer = new Thread(this); // creates a new object of type Thread
                 timer.start(); // starts the new thread
                 running = true; // tells the program that the new thread is running
         * Empty since the child objects have their own run methods
         public void run()
         * Stops the thread from running
         public void stop()
             running = false; // tells the program that the thread is now done
    import java.awt.*;
    * Creates a single ball who's purpose is to bounce around and destroy the bricks.
    * @author Kris Nelson
    * @version November 10, 2004
    public class Ball extends MovingSprite
        protected static final double BALL_WIDTH = 15; // sets the width of the ball
        protected static final double BALL_HEIGHT = 15; // sets the height of the ball
        * Constructor for objects of class Ball
        * @param  xPosition   the initial x screen position
        * @param  yPosition   the initial y screen position
        * @param  xSpeedValue   the speed in the x direction
        * @param  ySpeedValue   the speed in the y direction
        public Ball(double xPosition, double yPosition, double xSpeedValue, double ySpeedValue)
            super(xPosition, yPosition, xSpeedValue, ySpeedValue); // passes the initial screen positions and ball speeds to MovingSprite
            // !!!!!!!! have tried placing timer.start() here
        * Displays a ball onto the screen
        * @param  g   the Graphics object for this applet
        public void display(Graphics g)
            g.setColor(Color.blue); // sets the balls color
            g.fillOval((int)(screenX), (int)(screenY), (int)(BALL_WIDTH), (int)(BALL_HEIGHT)); // displays the ball
        * Runs the code that controls the balls animation
        public void run()
            do{
                try{
                    timer.sleep(100); // puts the thread to sleep for 100 milliseconds
                } catch(InterruptedException e) {running = false;}
                screenX = screenX + speedX;
                screenY = screenY + speedY;  // this is VERY SIMPLE BALL MOVEMENT FOR TESTING PURPOSES, WILL BE CHANGED LATER
            } while(running);
    }Sorry if that was too much code. I'm just trying to make this easier to follow.
    I placed a // !!!!!!!!!!!!! comment in the places where I have tried starting the ball thread.
    So basically, everything is running fine, except that I'm not at all sure of where to start the ball Thread, and thus can't start anything moving. If someone could tell me where I should be starting the thread, I would REALLY appriciate it. Thank you :D
    - Kris

    Some advice.
    1. the start method on the ball should be called from the start method on the applet and should in turn call the start method on the sprite's thread.
    2. the run method of the Moveable sprite should have been declare abstract
    3. don't implement borders manually. There's a java.awt.Border class for that.
    4. probably, you don't want to have the game invoke each sprite by name; just make a big list of all the sprites and invoke all of them every time
    5. do you really need provision for a non-circular ball? this isn't rugby.
    6. I don't think you ever had a threading problem, just a display problem.
    7. Don't write comments like this:     ball.display(g); // displays the ballHere's my (even more simplified version):import java.awt.*;
    import javax.swing.*;
    import java.util.*;
    * Class BreakoutApplet - Plays a simple game of Breakout.
    * @author Kris Nelson, modified by Michael Lorton
    * @version November 10, 2004
    public class BreakoutApplet extends JApplet implements Runnable {  
        protected Ball ball;
        protected Paddle paddle;
        public boolean running; // tells the program whether or not the thread is running
        protected Thread timer; // the thread which controls the animation for the applet
        public void init() {
            // this is a workaround for a security conflict with some browsers
            // including some versions of Netscape & Internet Explorer which do
            // not allow access to the AWT system event queue which JApplets do
            // on startup to check access. May not be necessary with your browser.
            getRootPane().putClientProperty("defeatSystemEventQueueCheck",
                                            Boolean.TRUE);
             ball = new Ball(this, GAMEWIDTH / 2, GAMEHEIGHT / 2, 5, 5);
        public final static int GAMEWIDTH = 600;
        public final static int GAMEHEIGHT = 400;
        public void paint(Graphics g) {
            g.setColor(Color.lightGray);
            g.fillRect(0, 0,
                       GAMEWIDTH, GAMEHEIGHT);
            ball.display(g); // displays the ball
        * Called by the browser or applet viewer to inform this JApplet that it
        * should start its execution. It is called after the init method and
        * each time the JApplet is revisited in a Web page.
        public void start() {
            if(timer == null) {
                timer = new Thread(this); // creates a new object of type Thread
                timer.start(); // starts the new thread
                running = true; // tells the program that the new thread is running
            ball.start();
        * Runs the code that controls the animation
        public void run() {
            do{
                repaint(); // redraws the screen
                try{
                    Thread.sleep(100);
                } catch(InterruptedException e) {running = false;}
            } while(running);
        public void stop() {
            running = false;
    abstract class Sprite {
        protected double screenX, screenY; // stores the x and y location of the object
        protected final BreakoutApplet parent;
        * Constructor for objects of class Sprite
        * @param  xPosition   the initial x screen position
        * @param  yPosition   the initial y screen position
        public Sprite(BreakoutApplet parent, double xPosition, double yPosition) {
            this.parent = parent;
            screenX = xPosition; // sets the initial x screen position
            screenY = yPosition; // sets the initial y screen position
        * Sets new x and y screen locations for an object
        * @param  newX   the new x screen location
        * @param  newY   the new y screen location
        public void setScreenXY(double newX, double newY) {
            screenX = newX; // sets the new x screen location
            screenY = newY; // sets the new y screen location
        * Sends back the current x screen location
        * @return     the current x screen location
        public double getScreenX() {
            return screenX; // returns the current x screen location
        * Sends back the current y screen location
        * @return     the current y screen location
        public double getScreenY() {
            return screenY; // returns the current y screen location
        abstract public void display(Graphics g);
    * Parent class of any game object that moves.
    * @author Kris Nelson
    * @version November 9, 2004
    abstract class MovingSprite extends Sprite implements Runnable {
        protected double speedX, speedY; // stores the speed of an object in the x and y directions
        protected Thread timer; // the thread which controls animation for all moving objects
        protected boolean running; // tells the program whether or not the thread is running
        * Constructor for objects of class MovingSprite
        * @param  xPosition   the initial x screen position
        * @param  yPosition   the initial y screen position
        * @param  xSpeedValue   the speed in the x direction
        * @param  ySpeedValue   the speed in the y direction
        public MovingSprite(BreakoutApplet parent,
                            double xPosition, double yPosition,
                            double xSpeedValue, double ySpeedValue) {
            super(parent, xPosition, yPosition);
            speedX = xSpeedValue; // sets the speed in the x direction
            speedY = ySpeedValue; // sets the speed in the y direction
        * Starts the thread in order to start animation
        public void start() {
            if(timer == null) {
                timer = new Thread(this); // creates a new object of type Thread
                timer.start(); // starts the new thread
                running = true; // tells the program that the new thread is running
        * Runs the code that controls the balls animation
        public void run() {
            while (parent.running) {
                try{
                    Thread.sleep(100);
                } catch(InterruptedException e) {
                    System.err.println(e);
                step();
        abstract protected void step();
    * Creates a single ball whose purpose is to bounce around and destroy the bricks.
    * @author Kris Nelson
    * @version November 10, 2004
    class Ball extends MovingSprite {
        protected static final int BALL_DIAMETER = 15;
        * Constructor for objects of class Ball
        * @param  xPosition   the initial x screen position
        * @param  yPosition   the initial y screen position
        * @param  xSpeedValue   the speed in the x direction
        * @param  ySpeedValue   the speed in the y direction
        public Ball(BreakoutApplet parent,
                    double xPosition, double yPosition,
                    double xSpeedValue, double ySpeedValue) {
            super(parent, xPosition, yPosition, xSpeedValue, ySpeedValue);
        * Displays a ball onto the screen
        * @param  g   the Graphics object for this applet
        public void display(Graphics g) {
            g.setColor(Color.blue);
            g.fillOval((int)(screenX),
                       (int)(screenY),
                       BALL_DIAMETER, BALL_DIAMETER);
        protected void step() {
                screenX = screenX + speedX;
                if (screenX < 0) {
                    screenX = -screenX;
                    speedX = -speedX;
                else if ((screenX + BALL_DIAMETER)> BreakoutApplet.GAMEWIDTH) {
                    screenX = 2*(BreakoutApplet.GAMEWIDTH  - BALL_DIAMETER) - screenX;
                    speedX = -speedX;
                screenY = screenY + speedY;
                if (screenY < 0) {
                    screenY = -screenY;
                    speedY = -speedY;
                else if ((screenY  + BALL_DIAMETER) > BreakoutApplet.GAMEHEIGHT) {
                    screenY = 2*(BreakoutApplet.GAMEHEIGHT - BALL_DIAMETER) - screenY;
                    speedY = -speedY;
    }

  • Create a Tempo Map to Song recorded without click

    i just received a logic project with guitars and vocals which were recorded to no click. whats the simples way to create a tempo map so i can program to it
    thanks

    record a midi track where you tap the tempo like a conductor, using like a simple click sound or whatever. play it as best you can in time with the music, then edit the clicks so they are perfectly in time or at least as good as you can get it. then use the beat mapping function (I think that is what it's called) to create a tempo map from the midi notes you recorded. that should do it. you can also fine tune the tempo map you've created by opening the global tempo track view and moving the tempo sync points around. there's stuff in the manual on this, you should find it if you search beatmapping or global tempo track.. somewhere in there.

Maybe you are looking for