Skip to main content

#153 Cost for Battle Mode Developpment ?

Posted in ‘NorrCompetition’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information (available for public)

PHP version
8.3X

Latest post by rcaconsult on Wednesday, 07 May 2025 14:59 EEST

rcaconsult

Hello,

How much do you take to purpose a plugin who permits "Battle mode" (in NorrCompetition 2.0.7 or earlier)

A mode where users decide choice between 2 pictures (randomly chosen from the same category), several times, consecutively.

Afterwards, as today, a ranking will be established and displayed (like now with "votes").

 Many Thanks for your Anwser

José

System Information

NorrCompetition version - 2.0.7

Linux info 3.0 #1337 SMP Tue Jan 01 00:00:00 CEST 2000 all GNU/Linux
Database Type
mysql
Database Version
10.11.7-MariaDB-log
Database Collation
utf8mb4_general_ci
Database Connection Collation
utf8mb4_general_ci
Database Connection Encryption
None
Database Server Supports Connection Encryption
Yes
PHP Version
8.3.17
Web Server
Apache
WebServer to PHP Interface
cgi-fcgi
Joomla! Version
Joomla! 5.2.5 Stable [ Uthabiti ] 11-March-2025 16:00 GMT
Joomla Backward Compatibility Plugin
Enabled ()
User Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36

sulpher
Hi Jose,
Thank you for your message and interest.
Certainly, the Battle Mode is an interesting idea and worth of consideration. However, this task is not easy due to various scenarios that should be counted during the development and we need more details. Specification is needed. Here are the questions:
1. A user starts to compare random photos (entries) and the process has beeen interrupted. Later the user comes back and... Should they start from the beginning?
2. How user should finish and exit the battle mode without interruption? Should there be something like "Finish battle"?
3. There are random pairs (couples) of photos. Let it be 100 entries in total. A user should perform 50 clicks (2 photos on the screen and one click "I like" should be taken). Then the progress bar changes anywhere in the bottom (3%, 5%, 10% completed). When the user reaches 100%, then... what should be displayed to the user?
4. And how to calculate and display the results of a closed contest?
5. Since photos are randomly displayed in the pairs, then there might be both photos which user like or want to skip. What should we do?
6. Can user re-vote and start battle again until the voting contest is active?
7. It is not clear the mechanism of voting for skipped photos which can appear in another pairs of photos next time. I mean, should we mark skipped photos (entries) as "unwanted" and do not display them in next pairs?
Please prepare the Specifications in details for better understanding. If a live example of the site with battle mode exists, please provive credentials to have a look as a user.

As soon as we can get details and answers on questions, then it could be more clear how to develop this functonality and we can talk about the price.

Have a great day,
Eugene

rcaconsult

Hello,

Here you have the infos about your questions
 
•    1) Each time the user returns to the battle page, two photos are randomly suggested again


•    2) Each user (registered users) can participate in as many random battles as they wish 
and exit the battle page by closing it or clicking the "Done" button.
Guest users can vote X times (by exemple 5) and after he need to registrate (IP detection to prevent bots her)


•    3) During each battle, the user who validates the pair of photos will have only three options:  
- Choose photo 1, (1 point)
- Declare a tie between the two photos, (0,5 points)  
- Choose photo 2. (1 point)
It's mandatory for him to make a choice between these 3 options

A user is not required to validate all battles, an user can validate 30 battles, 3 battles or 200...

The important thing, in the end, is that each image appears the same number of times overall during the battle period, but not that all possible duel combinations take place (so there is no need to keep a list of duels that have already been conducted).

For the Backend zone
•    The administrator will be able to choose:  
- to create a category (custom name) in battle mode, 
- the period during which photos can be uploaded (The administrator can change the duration once the countdown has started),  
- the period during which the random battle will be active.  
Then, at the end of this period, the results will be displayed (with a ranking from the most appreciated photos to the least appreciated ones).  

On this results page for the selected battle category, not all photos will appear, but only the top 30% of the best photos (the percentage is a parameter chosen by the administrator).
If we use binomial coefficient formula, for 100 photos the number of total comparaison is 4950 and 19900 FOR 200 photos. 
With this large total number of comparisons, I think the only important thing is that each photo is viewed as many times as its competitor.
It is also important that a registred user cannot vote for theirs owns photos .


 I would also like this new feature addition (battle mode) benefit not only me but also all other users with a subscription of the norrcompetition extension.


exemple of extension with Photo Battle (with only vote 1 or vote 2, without the equal choice)

https://www.le-consulting.club/en/random-pair

sulpher
Hi Jose,
• 1) Each time the user returns to the battle page, two photos are randomly suggested again

If the user previously votes for any of the photo that appears in the new battle (after user's next visit) and they have already voted for this photo, then... There might be the the following scenario:
- Count previous vote and do not display this photo in a new pair.
- If to display the same photos again, then theoretically the user will case more votes for the same photo and it opens the door for rating manipulation when the user starts battles endless times and votes for the same photo each time to increase its rating... It is what should be be prevented to keep fair voting. Any ideas?

rcaconsult

A lottery draw can come up twice in a short period (Just as 2 images can be submitted for competition twice in the same period)..  
It can happen; that's just randomness. Should we prevent this possibility?  I don't think so, it's just chance.

The main idea is that all photos should be shown to ALL voters the same number (total display across all users, not by user)  of times (even if it means allowing a little extra time at the end of the counting process to ensure each photo gets the same number of views (to All users).  

At the end of the count, we take the maximum number of times the most frequently shown photo was displayed (to ALL users) due to randomness among all the photos.  
Then, the counting continues until all other photos have reached that same number of views.

sulpher
Hi Jose,
Thank you for providing the information.
It is hard to estimate the exact number of hours that need this task to be completed on since the task is complex and I bet there are different nuances that will occur during the development. But according to this discussion we think it will require 30 hours of development as a minimum. Taking into consideration this functionality should be included as a part of the component later, the price is corrected. It is about 500-700 EUR for realizing this task.
We will be able to start from the second half of April. Please let me know if it sounds ok for you.

Best regards,
Eugene

rcaconsult

Ok. 
but I would like please that the battle mode be available to all norrcompetition users with active subscription (integrated or downloadable in the same page that others norrcompetition plugins/modules)

And I would like please an invoice.

many thanks, regards

sulpher
Dear Jose,
Yes, it will be a part of the core component. Thanks. And no problem with the invoice. As soon as we finish current task (it require about a month), we will be able to start working on this task. Please send your company's information to us for invoice at sales@norrnext.com. We will contact you additionally in the 2nd part of April and coordinate the task.
Thanks and have a good weekend,

Best regards,
NorrNext team

rcaconsult

Hello

It's possible please to make this ticket "private" (to send infos)

Many Thanks

b2z

Hi Jose,

It is private now. 

Kind regards,

Dmitrijs

rcaconsult

Hello

I come back to you aobut this Task because of your sentence

"We will contact you additionally in the 2nd part of April and coordinate the task."

Many Thanks

Regards

b2z

Hello!

We are now in the final stage of current work so soon will start on your request.

Meanwhile please explain one more time the idea with photos (entries) display. You wrote that entries should be displayed the same number of times for all users. So it means that we need to record how many times the entry has been displayed in the battle, in other words to count battles for every entry. Correct?

And did not understand this idea:

If we use binomial coefficient formula, for 100 photos the number of total comparisons is 4950 and 19900 FOR 200 photos.

Kind regards,

Dmitrijs

 

rcaconsult

Hello Dmitrijs,

 

Yes, it means that we need to record how many times the entry has been displayed in total during the selected period of time (if we do this, then it’s necessary to use the binomial coefficient formula).

Two photos will be displayed in the component zone: one on the right, one on the left (with the possibility to Choose photo number 1, (the photo will gain 1 point)
- Declare a tie between the two photos, (0,5 points gained by each photo)  
- Choose photo 2. (the photo will gain 1 point)
It's mandatory for him to make a choice between these 3 opt

A user is not required to validate all battles, an usvalidate 30 battles, 3 battles or 200...

The important thing, in the end, is that each image appears the same number of times overall during the battle period, but not that all possible duel combinations take place (so there is no need to keep a list of duels that have already been conducted).

in fact each entry (photo) must have 2 parameters linked :

Total points win

number of time displayed

Please, is mandatory too :

Text displayed can use joomla language override or battle mode must be multilingual (with .ini files availables).


Regards

 

b2z

I promted Chat GPT regarding the battle mode and that photos should appear the same number of times overall during the battle period. Also asked about binomial coefficient formula. After several promts and code examples we have concluded that binomial coefficient formula is not suitable for large amount of photos (>5000) because of large combinations amount.

Then I promted another idea - to select only N photos with the lowest display count and make a pairs from them. GPT proposed me to use weighted probabilities which will be close to weighted random selection and very close to binomial distribution. The conception:

  • select N photos with the lowest display count from the database
  • each selected photo will have a weight inversely proportional to the number of appears in the battle
  • less appears has a greater chance to select a photo
  • from these photos 2 with different weights are selected
  • after vote these 2 photos will get an updated display count
  • new selection of N photos with the lowest display count from the database will be made

What do you think? It seems that this conception should cover your idea that each image appears the same number of times overall during the battle period.

Kind regards,

Dmitrijs

sulpher
Hi José,
There is no response from your side. Is it still actual for you?
We are ready to start working on this task.

Please send us details about your company at support@norrnext.com. We will prepare an invoice for prepayment and can start.
Thanks.

Best regards,
Eugene

rcaconsult

Hello,, my partner had a health problem, I'll get back to you In 15 days to tell you yes or no and if the project is still relevant. And in that case, start.

best regards

 

Support information

Support hours: You can get our help: Monday - Friday / 09:00 to 17:00 (GMT+3), but not limited. Our staff is pleased to provide Premium support to every paid subscriber asap, but sometimes you should be ready to wait for our reply for up to 3 days.


Our time: / Your time:

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. We also ask you to remove temporary credentials at your site after the problem is resolved. Thank you.

Support of free extensions is not provided on this forum. Please submit your questions or report issues via Github tracker. See link on the product page.