Wednesday, December 24, 2014

Practise Games - Cricket Added!

Due to popular demand, I've started work on adding practise games to DartMan. The first of these to be added is Cricket.

To start a game of cricket:
  • Open DartMan
  • Click the Practise Games tab in the Game Setup section
  • Select the players to play
    • You can add new players to the list by entering their name, and clicking Add Player to List
  • When you click Start Game, the cricket screen will be displayed:
  • The player who's shot it is now, will be highlighted in blue.
  • The current shot number (1st Shot, 2nd Shot, 3rd Shot) will be highlighted.
  • Click the appropriate buttons corresponding to the player's score.
    • If a player misses in a single shot, click No Score
    • If a player misses in all of their shots, just click Submit Scores to submit empty scores for each shot
    • The next shot number will be highlighted. To go back to change a shot, click the corresponding box - the highlighting will change to indicate that shot will be logged next.
  • When all three scores are entered, click Submit Scores to log the scores.
    • The next player will be highlighted.
  • Scores are tallied after each time that Submit Scores is entered.
  • When a player has won the game, a message will be displayed to indicate this.
  • Click Restart Game to start another game with the same group of players.
    • Check the Randomise Player Order box to sort the player order randomly.
As this is a new addition, please provide any feedback or report any issues you may encounter. Hope you enjoy it - Happy Christmas from the DartMan team!

Saturday, December 13, 2014

Website Updates

The DartMan website has been updated with the following changes:

Updates


  • Updated the Games List page (stats/games) to show player usernames instead of their real names
  • Updated the Recent Games list on the right side of the home page with a button to toggle the display of computer games in the list.
  • Updated the player Stats page to show the most recent games played by the player, and most recent records achieved by the player. There are also links to show all games by that player (view all…) under the Recent Games list.

Bug Fixes



  • Fixed a bug on the stats page which showed 'NaN' (Not a Number) in the some figures, instead of 'n/a'
  • Fixed a bug which meant that changing the dates in the Stats page, and clicking Refresh Stats had no effect - the results shown were the same as previously. This is now corrected.
  • Fixed bugs which meant that changes to the filters on the games list page were not reflected properly when the Refresh button was clicked.  This is now corrected.

Friday, November 21, 2014

DartMan v2.2.1.6 released!

DartMan has been updated with the following changes:

Updates

  • Made some aestethic changes to the display of online players and game requests.
  • Added a 'friend' icon beside online players who are in your friends list.

Bug Fixes

  • Fixed a bug that meant the F12 function key for submitting the remaining score for the current player to win the leg, as well as other function keys (for example pressing F5 with 60 remaining) didn't complete the leg correctly, and could also cause exceptions which crashed the program. This now works as expected.
  • Corrected the logic that determines if the score entered is valid in some scenarios
  • Fixed a bug which meant that if any player declined an online game request, those two players could not make new game requests to each other after that point.
  • Set the Minimum Value on First To Legs to 1, instead of 0
DartMan will update automatically the next time it's started.

Tuesday, November 18, 2014

DartMan v2.2.1.5 released!

DartMan has been updated to version 2.2.1.5 with the following changes:

Updates:


  • Added ability to edit the display name in the Game Screen
    • This is possible only for non computer players, in offline games only.
    • Double-click the Player Name to edit it. Press enter when done.
  • Improved Computer Player logic when approaching or executing finishes. The Computer player attempts smarter choices now, dependent on how many darts they've thrown so far in the current turn. For example:
    • If the computer has 188 remaining and one dart left, he will aim for Treble 18
      • Single 18 leaves 170, which is still a finish.
    • With 50 remaining, and more than one dart, the Computer won't shoot for the bull, however if it's last dart he will shoot for bull.

The following updates have also been applied in the interim versions between this and version 2.2.1.0:

Updates:


  • Added a Frames Per Second option to control how many video frames are sent to the opposition player's computer in online web cam games. This should help allow players adjust video to a satisfactory level.
  • Added notification for a failed connection to the server. In these instances, logs will be uploaded to the server for my analysis.
  • Player states change if a local game is started now, no longer just Online games

Bug Fixes:


  • All game requests and rejected/cancelled, and existing games are quit if a player shuts down DartMan
  • Fixed a bug in the UDP hole punching code which meant that hole punches were not sent for as long a duration as the other client would be listening for them.
  • Fixed a bug that meant connection to server was lost when the player starts a local game.

Monday, October 13, 2014

DartMan 2.2.1.0 released!

A major update to the online code for DartMan should result in almost all logged-in players going online automatically, without any configuration! The same technique used for connecting players to the server is applied to the video-streaming between players, meaning that this should also have a much higher success rate. The online page layout has also been updated so that it is more fluid, and allows all the areas to be resized to suit your preference. The full list of changes in this release are as follows:


  • Updated the entire Networking codebase to use UDP instead of TCP for server and player to player connections. This should eliminate the need for manual router configuration for most users, and allow most users to go online automatically.
  • Reorganised the Online screen with sizable areas to better display all information.
  • When you go online, you are notified of how many players are online, and how many of those are friends.
  • New Video Streaming options:
    • Added Video Compression option to control level of compression.
    • Added Frames Per Second to Send option to control how many video frames are sent to the opposition player's computer. This should help adjust video to a satisfactory level.
    • These options should allow players to adjust the video streaming to a level that works well for their system.
Please set the video resolution to the lowest resolution on your WebCam initially, and then test with higher ones to see which gives the best balance between quality of image, and frame rate.

Please provide any feedback or suggestions in the comments box below.

Saturday, August 16, 2014

DartMan v2.2.0.12 released!

DartMan has been updated, with the following changes:

Updates


  • Added a Send Current Log to Support... menu item in the Help menu
    • This will allow you to directly send a log file to us if you experience an issue, so that it can be investigated quickly.
  • DartMan will now attempt to open ports on the router, even if it experiences an error retrieving existing port mappings from the router.
    • This may help more users get online automatically, without having to manually forward ports on their router

Bug Fixes



  • Fixed another scenario where video would only work for 1 online game. After one online game, video might not work again until DartMan was restarted.
DartMan will automatically update the next time it is restarted.

Wednesday, August 13, 2014

DartMan 2.2.0.10 released!

DartMan has been updated with the following changes:

Updates


  • Clicking the highlighted player's name in the Online Lobby will open their stats page on the website.
  • Records are now shown to the user again when a player beats their best leg and/or high checkout. This was broken in the last few releases. Also, an optional sound is played when this occurs to further alert the player.
  • The Test Camera button is now disabled while there is an online game in progress. This is because clicking this button during a game could result in issues with the live video feed to the other player.

Bug Fixes

  • Fixed scenario where the video stream was too large to send to the remote player. Now, if too high a resolution is chosen for the webcam, DartMan will automatically reduce the resolution until a suitable one is found for streaming video.
  • Fixed a bug which caused users to go offline and online any time any setting was changed and saved.
DartMan will automatically update when restarted. Please provide feedback and suggestions in the comments, or via the Contact page on the website.

Friday, August 1, 2014

DartMan v2.0.0.9 Released!

DartMan has been updated! The main changes are around the online video elements, with the match scores now shown with the remote player's video feed, and better resolution video now available. Full details of the changes are detailed below:

Updates

  • Added current game scores on top of the remote player's webcam screen
  • Added ability to select video resolution for web cam online games. Previously this was always set to the web cam's default setting.
  • In the online lobby, the selected player's country name is now shown above their flag.
  • Changing of online comms ports settings no longer requires a restart, unless you are in the middle of an online game.
  • Added a feedback form, accessible from the Help menu. It will also be shown the first time an online game is completed.
  • In the online lobby, the selected player's country name is now shown above their flag.

Bug Fixes

  • Fixed a bug in 'Best Of' games which was calculating the games required to win the game incorrectly. For example, in a best of 3 previously you would not win the match having won 2 legs. This is fixed now.
  • Fixed a bug which meant that a webcam game would only work once. In any subsequent games video would not be received from the remote player, until DartMan was restarted.
  • Fixed a bug causing the code that stops an online game to be executed twice
  • Fixed a bug which caused all online players to receive two notification messages when a player went offline
  • Fixed the link launched when clicking the balloon for help with connecting to online
DartMan will automatically update the next time it is launched. Please provide any feedback or suggestions in the comments below, or via the Contact page on our site.

Tuesday, July 22, 2014

Update - Sets and Draws added!

DartMan has been updated, with the major change being the ability to play sets of x number of legs, as well as the ability to play 'Best Of' x number of legs, rather than just 'First To'. This will allow draw results to be possible, which opens the way for adding tournaments/leagues, which is on the horizon.

The changes in this release are:

Updates

  • Introduced/enabled the ability to play Set Games
  • Introduced the ability to draw games, by using the 'Best Of' option, instead of 'First To'.
    • This is only applicable to 'Best of' leg games (not sets).
    • Also, this currently does not apply to online games (but will shortly)
  • Improved further the automatic configuration of network ports for online play via UPnP

Bug Fixes

  • Fixed a bug which meant that when a user clicked the Logout button on the Connect tab, the online client remained running.
  • Fixed a bug where when an online web cam game completed, DartMan was still trying to receive remote web cam video from the other player.
  • The link for downloading the PDC Darts Demo installation (which contains the caller out sounds) in the Sounds Options tab is now working.

Website Updates

The DartMan website has also been updated, to handle the display of set games, and draws:
  • The Recent Results list shows the score with 'Legs' or 'Sets' to indicate the match type
  • The Games List page now shows:
    • 'Legs' or 'Sets' to indicate the match type
    • If a result is a draw, it displays this
DartMan will automatically update to the latest version the next time it is launched. Please provide feedback in the comments below, or via the Contact page on the website.

Friday, July 18, 2014

Website Updated

The DartMan website has been updated with the following changes:

  • It is now possible to search for users in the My Friends page by username as well as email
  • The My Friends page now shows the username of each friend, instead of the player name

Sunday, June 29, 2014

DartMan v2.2.0.6 released!

DartMan has been updated with the following changes:

Updates


  • DartMan now checks for any existing DartMan UPnP port mappings (on any IP Address) that match the ports configured for use in DartMan, and if they exist, it deletes them so it can use them for itself. This covers scenarios where your PC IP address changes for any reason.
  • Added a notification sound which is played when a player comes online.

Bug Fixes


  • Fixed a bug which caused longer games (with more data) to not save to the database in certain scenarios. DartMan will not allow an exit until database saving is complete.
DartMan will update automatically when it is restarted.

Tuesday, June 24, 2014

DartMan v2.2.0.5 released!

DartMan version 2.2.0.5 has been released! This update contains the following changes:

Updates

  • Games are now tagged as WebCam games when a webcam has been used

Bug Fixes



  • Fixed a bug which showed the local player's username instead of the remote player in the game requests received list.
  • Fixed a bug that caused a timeout on the connection between 2 players if a game request was not responded to in a timely fashion
  • Fixed a bug from version 2.2.0.4 that meant after sending a request to a player, and either playing the game or cancelling the request, you couldn't send a game request to the same player unless you highlighted another player first. So if there was only one other player online, you needed to restart DartMan to play another game against this player.
  • Fixed a bug which caused longer games (with more data) to not save to the database in certain scenarios.
DartMan will auto update the next time it is started. Please provide feedback/suggestions in the comments below, or via the Contact page on the website.

Sunday, June 22, 2014

DartMan 2.2.0.3 released

DartMan 2.2.0.3 has been released. This version includes the following changes:

  • Improved the automatic network configuration, which should mean most people can get online without any manual configuration.
    • If DartMan does not go online automatically, you may need to enable UPnP on your router. See here for further help on this topic
  • Fixed some unhandled exceptions which were causing crashes
DartMan will automatically update when it is started next. Please report any bugs/feedback/suggestions in the comments, or via the Contact page on the website.

Monday, June 16, 2014

DartMan v2.2.0.0 Released - Online and UI Revamp!

DartMan has been updated, with a user interface overhaul, and a complete redo of the online elements. The User Interface has been reorganised into tabs, for easier navigation, and to allow expansion and addition of other games to be scored at later dates. Here is a breakdown of the tabs, and the elements within them:

  • Game Setup tab

    • Local x01 tab

      • Set up a game of x01 against human or computer opposition

    • Online tab

      • View who's online
      • View/Accept/Reject online game requests received
      • View/Cancel online game requests sent
      • Send a new online game request
      • Chat with other players in the lobby
      • View server messages about new games starting, or existing games finishing

  • Options tab

    • Connect Tab

      • Login to DartMan for online functionality and saving of scores/statistics

    • Sounds Tab

      • Configure sound settings

    • Game Options tab

      • Configure game options such as Shortcut Keys and Computer Throw delay

    • Network and Video tab

      • Configure Network Connectivity ports
        • Communication Port
        • Video Port
      • Configure and Test Camera for online play

  • x01 Game

    • This tab displays the current game of x01, whether online or offline.

  • Remote Player

    • This tab is only visible during an online game which has WebCam required checked. This tab will be selected when it is the other player's turn, so you can see their throw.


The game screen will be familiar to existing users, and so will most elements. The main difference is relating to the online elements, and configuring your PC to be able to use the online functionality. The most important thing in this regard is configuring online ports.


Setting Up Online Play

In order to play online, DartMan needs to be able to communicate with it's server, and also with other players who are connected. In order to do this, network ports need to be opened on your PC. There are a couple of steps you need to make after starting DartMan to ensure it will work online:
  • When you start DartMan, if you are prompted to allow or block the program's access to the internet or with a Firewall alert, click Allow.
    • Restart DartMan if you were prompted with the above message.
  • Go to the Options tab
  • Click Network and Video
    • Select an IP Address from the list (usually it should begin with "192.")
    • Click Auto Configure Ports
If you get a notification "UPnP configuration is applied. Please test connectivity to verify.":
Restart DartMan. Once restarted you should receive a notification that you are connected to the DartMan server, and then you are online.

If you get a notification "UPnP is not enabled for configuration on your PC and/or Router. Please enable UPnP and try again.":
You need to enable UPnP on your router and/or computer. In this case, check your router manual to enable UPnP (or search google for instructions specific to your router).
For instructions on enabling UPnP on your computer, click here.

Once you configure/enable UPnP, restart DartMan and then try to Auto Configure the ports again. If this still doesn't work, visit http://portforward.com for instructions on manually forwarding the DartMan ports to your PC. If you cannot get this to work, you can use the Contact Us page on our website and we will assist you getting going.

Once you are connected to the DartMan server, the next thing you should configure is your webcam:
  • Go to the Options tab
  • Click Network and Video
    • Select a webcam from the list, and click Test Camera
    • Adjust your webcam to a position you are happy with, and then click Stop Camera
    • Don't forget to click Apply Changes in the bottom right to save your camera selection!
That should be it! Go into Game Setup and click Online and say hello to anyone who's online, send them a game request and get playing!

Note: Check the WebCam check box if you want this game to be a webcam game, otherwise no web cam will be required to play.

When you are in an online game, there is chat available between you and your opposing player. If the chat isn't visible, it is because you have a low screen resolution. You can still view the chat window by clicking the View menu, then choosing Show Chat.

DartMan will automatically update when you start it next.

Please provide any feedback, bug reports, suggestions in the comments, or via the Contact Us page on our website.

Wednesday, May 21, 2014

Update Progress

Update Progress

Good progress is being made on the next major DartMan update. This update will include the following:

A completely redone and revamped online gaming system, including webcam video streaming between players.
A complete overhaul of the User Interface, to allow easily extending it with new games

Hopefully a release will not be too much longer!

Wednesday, March 26, 2014

Website Updates

The dartman.mickhynes.com website has been updated with the following changes:
  • Updated all references to players to use their username now, instead of actual names
  • Added drop down menus on the main navigation menu, for easier and quicker navigation to sub-sections of the site. At present, these are under the profile, stats and contact menus.

Monday, March 24, 2014

DartMan v2.1.0.6 released!

DartMan v2.1.0.6 has been released. This version contains the following changes:

Updates


  • Added the display of 170+ scores in the game screen

Bug Fixes:


  • Fixed a bug that meant valid scores such as 165 were not possible to enter. Also disallowed attempted entry of scores > 180 (even though these were not validated, and the score was not submitted).
When restarted, you can choose to update DartMan to obtain these changes.

Thursday, March 20, 2014

DartMan v2.1.0.5 released

DartMan has been updated with the following bug fixes:

  • Fixed a bug which caused legs to not save due to datetime culture issues. This only occurred in certain rare situations.
  • DartMan now automatically detects if the PDC DartsDemo is installed, for caller out sounds. If it is installed, and it's sounds location are different to those configured in the settings, it corrects this so that sounds will be played.

Please update when prompted when DartMan is launched to receive these fixes.

Monday, February 10, 2014

DartMan v2.1.0.2 released!

DartMan has been updated with the following changes:

New Features

  • Added an option End of Leg Counter
    • This option allows you to set the default timeout at the end of a Leg against a Computer player, before the next leg will automatically begin

Bug Fixes

  • Fixed a bug caused by clicking the New Game menu whilst in a game. This caused the application to crash
DartMan will automatically update when launched next.

Friday, February 7, 2014

Website Updates

The DartMan website (dartman.mickhynes.com) has been updated, with the following changes:

New Features


  • Added a twitter feed to the home page, under the Recent Games. This displays the most recent tweets from the DartMan Twitter Account
  • The player names in the View Game page are now clickable. Clicking them will bring you to that player's statistics page
  • Added links to Previous and Next games on the View Game page. These links allow navigation of:
    • All games
    • Player One's games
    • Player Two's games

Bug Fixes


  • Fixed a bug which meant the navigation menu wasn't displayed on the Error page
  • Fixed incorrect links to JavaScript and CSS files, causing 404 errors
  • Fixed the formatting of the display of legs in the Game screen for Firefox, Opera and older Internet Explorer browsers. This was due to missing CSS entries

Monday, February 3, 2014

DartMan v2.1.0.1 released

DartMan v2.1.0.1 has been released. The changes included are as follows:

Bug Fixes:


  • Fixed a bug in online play, which caused an incorrect Player to be associated to the game. This caused other issues with online play also.
  • DartMan now detects the default browser, and uses that when links to Register, Profile or Download Sounds are clicked. These windows now open immediately - previously this could freeze the program for 45 seconds.
  • Fixed 2 bugs caused when clicking the Options or My Friends menu within the View menu.

New Features:


  • Added a link to the 'Register Player' web page from the Friends Screen
  • Added a new menu option in the Game Screen: Help -> View log files...
    • This option will open the folder where logs are stored, for assisting with any issue diagnosis if necessary.

DartMan will automatically update the next time it is launched. Please leave feedback in the comments, or via the Contact Us page on the site.

Friday, January 31, 2014

DartMan v2.1.0.0 released - online play beta!

DartMan v2.1.0.0 has been released! This release includes a number of bug fixes. The main new functionality included is the addition of online play. This feature allows players to play against other DartMan players who are logged into DartMan.

DartMan now contains an Online tab. Here is a screenshot of this new tab:

DartMan Online Options
Toolbar Button Descriptions:

  • Connect - Connect to Online
  • Disconnect - Disconnect from Online
  • Game Request:
    • Send - Send a Game Request to the selected player
      • The Game Request will match the Game Settings chosen in the lower half of the screen
    • Cancel - Cancel a previously sent Game Request
  • Status:
    • Ready - Means you are available to receive Game Requests
    • Not Ready - Means you are not available to receive Game Requests

Instructions to start an online game:
  • Open DartMan
  • If the Online tab is not visible, click the Connect button, and log into DartMan.
  • Click the Online button.
  • If you wish to send a game request:
    • Set the game options in the lower half of the screen
    • Highlight the player you wish to play against
    • Click the Send button
    • If the remote player accepts the request, then you will be informed of this, and can commence the game.
  • If you receive a game request, a window will pop up detailing the request. If you wish to play, click Accept

WebCam Play

If you wish to play using WebCams to show your board, and see your opponents board, you can tick the Require WebCam check box.

Once a web cam game is accepted, you will have the option to Launch Video - this will open your browser and navigate to a video chat service, and open a specific room that only you and your opponent will be a member of.

If you use this approach, DartMan can automatically switch between the WebCam view of your opponents board, and the DartMan scoring application, depending on whose turn it is.

Tips for video chat:

  • Close all browsers, then open a blank page in one browser (Google Chrome and Firefox only are supported for built in video)
  • If the WebCam chat doesn't open first time, close any Browser tabs that DartMan automatically opened, and retry with step one above (DartMan will give itself longer each time to get it working)
  • If this is failing, you can negotiate with your opponent to use Skype, or some other video chat service instead.

InGame Chat

It is possible to send chat messages to your opponent whilst in the game, if required for any reason. To do this, Click the Chat with <player name> button in the bottom left of the screen. A chat window will open up in the bottom right corner of the screen, like this:


Just type a message, and click Send of press enter to send it.

Once you are in the game, scoring is done as usual:
  • When it is your throw, throw your darts, then enter your score
  • When it is your opponent's throw, you must wait until they enter their score, and then it will appear on your screen.

Remember, this is new functionality, and is a BETA version, as it requires extensive testing and feedback! Please feel free to provide feedback on it's performance and your experiences using online play, as well as any suggestions in the comments section below. All feedback is greatly appreciated.

DartMan will automatically update when you launch next.


Here is a list of all changes and fixes in this release:

New Features/Additions:

  • Added online play. Ability to play other DartMan members anywhere in the world.
  • Added the display of possible check outs once one player has a possible out shot.
  • Changed the Darts column back colour to Gray for better appearance

Bug Fixes:

  • Fixed a bug caused when using the 'Rematch' feature when playing the computer. In the game immediately after clicking Rematch, the computer's throw would commence on the wrong row (1 row from the top, instead of the top row).
  • Fixed a bug causing score validation to occur twice.
  • Fixed a bug which caused a crash when a non-logged in player started a new game.
  • Fixed a bug which meant that computer scores were not called out.
  • Fixed a bug which meant that 180 scores were not called out. This is because there are 3 variants of the 180 audio file. So one of these will randomly play now instead.

Saturday, January 11, 2014

DartMan 2.0.0.20 Released

DartMan v2.0.0.20 has been released. This release contains bug fixes only.

Here is a list of all changes and fixes in this release:
  • Fixed a bug caused when using the 'Rematch' feature when playing the computer. In the game immediately after clicking Rematch, the computer's throw would commence on the wrong row (1 row from the top, instead of the top row).
  • Fixed a bug causing score validation to occur twice.
  • Fixed a bug which caused a crash when a non-logged in player started a new game.
  • Fixed a bug which meant that computer scores were not called out.
DartMan will update automatically when opened next.

Coming soon: DartMan online play. DartMan will soon allow players to play other DartMan players anywhere in the world. Watch this space!

Saturday, January 4, 2014

Website Updates

The website has been updated with the following minor changes:

  • Fixed a bug on the View Game screen caused by inconsistent data which was unhandled and cause the leg not to display.
  • Set the date range in the Stats Page so that the start date is the date that the player registered.