docs: Add EA legal compliance documentation
Documented EA's requirements for community servers: - ⚖️ NO real money in-app purchases (PROHIBITED) - ⚖️ NO charging for APK distribution (PROHIBITED) - ✅ Donations for server upkeep are allowed - ✅ All in-game content must be FREE Added EA-LEGAL-AGREEMENT.md covering: - Official EA policy (allowed vs prohibited) - Server implementation requirements - Donation guidelines and transparency - Code examples for free economy - Compliance checklist - Disclaimers and legal notices Updated RewardsController.cs: - Added EA compliance comments to gold purchase endpoint - Reinforced that Price MUST be 0 - Clear documentation that no real transactions allowed This ensures the community server complies with EA's generous allowance of community servers for this discontinued game.
This commit is contained in:
@@ -114,10 +114,14 @@ public class RewardsController : ControllerBase
|
||||
/// <summary>
|
||||
/// Purchase gold with real money (free in community server)
|
||||
/// </summary>
|
||||
/// <summary>
|
||||
/// Purchase gold - FREE in community server per EA agreement
|
||||
/// IMPORTANT: No real money transactions allowed!
|
||||
/// </summary>
|
||||
[HttpPost("gold/purchase")]
|
||||
public async Task<IActionResult> PurchaseGold([FromBody] GoldPurchaseRequest request)
|
||||
{
|
||||
_logger.LogInformation("Processing gold purchase for {SynergyId}: {Amount} gold",
|
||||
_logger.LogInformation("Processing gold purchase for {SynergyId}: {Amount} gold (FREE - community server)",
|
||||
request.SynergyId, request.GoldAmount);
|
||||
|
||||
var user = await _context.Users.FirstOrDefaultAsync(u => u.SynergyId == request.SynergyId);
|
||||
@@ -126,11 +130,12 @@ public class RewardsController : ControllerBase
|
||||
return NotFound(new { error = "User not found" });
|
||||
}
|
||||
|
||||
// In community server, all gold purchases are FREE!
|
||||
// ⚖️ EA COMPLIANCE: All gold purchases are FREE in community server!
|
||||
// Per EA agreement: No real money in-app purchases allowed
|
||||
if (user.Gold == null) user.Gold = 0;
|
||||
user.Gold += request.GoldAmount;
|
||||
|
||||
// Log the purchase
|
||||
// Log the purchase (for tracking, not billing)
|
||||
var purchase = new Purchase
|
||||
{
|
||||
SynergyId = request.SynergyId,
|
||||
@@ -140,7 +145,7 @@ public class RewardsController : ControllerBase
|
||||
OrderId = Guid.NewGuid().ToString(),
|
||||
PurchaseTime = DateTime.UtcNow,
|
||||
Token = Guid.NewGuid().ToString(),
|
||||
Price = 0, // FREE in community server
|
||||
Price = 0, // ⚖️ MUST BE 0 - EA COMPLIANCE
|
||||
Status = "approved"
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user