Блог пользователя kien_coi_1997

Автор kien_coi_1997, 10 лет назад, По-английски

I have quite good experience in application development and I like it. Annually, I create a game and post it on Codeforces. This is my third game so I believe that many coders will like it.

 .

In my game, you are a little circle, there is a name which has an additional character. Your goal is to find and correct it. The game will end when the little circle reaches the bottom of the screen.

This is a chance for you to discover quite a large number of red coders (top 200), and know where they are from.

Technical detail:

  • File size: before extracting: 2.0 MB, after extracting: 2.1 MB.
  • Supported platforms: Linux, Windows.
  • Tested on Ubuntu 14.04 and Windows XP.

Hope you interesting.

Link download: https://drive.google.com/file/d/0B97Iu255Omo8aFl5VlVmTnRZNms/view?usp=sharing

Hope you interesting.

Link download: https://drive.google.com/file/d/0B97Iu255Omo8aFl5VlVmTnRZNms/view?usp=sharing

  • Проголосовать: нравится
  • +94
  • Проголосовать: не нравится

»
10 лет назад, # |
  Проголосовать: нравится +24 Проголосовать: не нравится

Ha-ha, put an 'O' or '0' there and this level would be impossible!

»
10 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Can you share the source code? I'm on Mac, and I can't run the executable file :(

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Of course! It is written in Pascal using Lazarus to compile. If you can build it, please upload it for other people, thanks.

»
10 лет назад, # |
Rev. 3   Проголосовать: нравится +3 Проголосовать: не нравится

Played like 20 rounds, I now feel I've seen every red coder's handle except my own.

That's probably because the game knows I'm really blue inside.

Edit: This game is brilliant sometimes. We really should have handles like heatmore, PacMonster and omeret.

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    AloneFox

    In fact, it is uniform distribution.

    • »
      »
      »
      10 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Is it? I was getting 'tourist' and 'Petr' quite often, definitely more often than coders from second hundred. Another thing I noticed is that it often gives same handles several times in a row, I had 'tourist' and 'Petr' up to three times in a row with different typos.

      • »
        »
        »
        »
        10 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

        Let me talk about some strategy in my game.

        Choosing question

        Assume N is length of the list.

        • i := RandomBetween(1, N);
        • i := RandomBetween(1, i);
        • i := RandomBetween(1, i);

        then i is index of the choosen name.

        Choosing inserting position

        • Position: Random between 0..Length.
        • Character: Random between 'A'..'Z'

        Answer acception

        There can be more than one solution, any of them are accepted.

        PS: I meant inserting positions is uniform distribution, but choosing question.

»
10 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

So I got tourist around 40% of the time. :)

»
10 лет назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

Mr kien_coi_1997, I am really really keen on application-making but have no ideas about how to build one, I wonder if you could recommend me some sources of self-learning (some web pages or books). I am studying myself, but I believe that you can help me with the best materials. Is it possible? Lastly, I have one inquiry about how you draw your images, I don't think that those beautiful pictures are made by coding. Is it true that you draw them by another tool and just add to the main code? THat is also my biggest problem, could you help me, please?

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится

    I'm glad you are interested in application development too.

    If you are a beginner, you have to choose a suitable RAD IDE. RAD IDE is an IDE enabling people develop an application rapidly. I'm familiar with Lazarus, only because I learnt it first. Lazarus uses FPC to compile. If you are good at C++, using wxWidget in CodeBlocks is a good choice. You may want to see some tutorials for beginner: http://wiki.freepascal.org/Lazarus_Tutorial

    If you are no longer a beginner, it is hard for me to advise you any documents, The reason is that I learnt app dev by self-learning only. My coding style are affected by the source code of lazarus project. You may want to have a look at this.

    The images in my app are collected from Google :D It took me a short time to find these images. Personally, it seems hard to create any images by myself.

»
10 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Love the game... Score :- 990 .... :D :D

»
10 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Can You please make the MAC version too? :)

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Sorry, it is difficult for me. If you are able to install Lazarus in Mac, you can try to build this project your self (compile my code). If so, please tell me your mail address, then I will allow you to access the source of this project.

»
10 лет назад, # |
  Проголосовать: нравится -8 Проголосовать: не нравится

Thanks game is fun, with attractive way for select menu items and answers :D

but it isn't lazy strategy for choosing questions ?! :( Can solve duplicating and less shuffling problems ( and still keep more chance for top contestants ) with this strategy ?? :

First we create an array of all contestants respectively ( tourist , Petr , ... )

Then give for all of them a random number between a special range , that this range will be increase on every step . For example:

   1  .tourist -> rand(900,1000)
   2  .Petr    -> rand(897,1000)        // increase size of range by 3 in every step 
   3  .rng_58  -> rand(894,1000)        // ( or any suitable number 1,2,4,5,... )
   4  .WJMZBMR -> rand(891,1000)
   ...
   100.zxqfl   -> rand(603,1000)
   ...
   200.voover  -> rand(303,1000)
   201.?????   -> rand(300,1000)

Then sort them in descending order with paired values ( maybe unstable sort help for more shuffling )

Now we can start questions from number 0 and go forward and be sure that we have not same questions and almost good shuffled :)

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    This game is not necessary to be perfect. I tried my best to develop this game in last days of 2014. Because it is now 2015, there aren't any reasons to keep maintaining this game. In this time, I have to do other necessary things.