Personally, I'm a fan of simple, easy-to-understand formulas.
For instance, every weapon has a minimum and maximum damage value. Say a longsword does 15-25 damage - what it does with that is multiply a number randomly chosen in that range by 1/10 of your strength, so with 20 strength you'd do 30 - 50 damage.
For hitting your target, you take your agility, and add it to your weapon's hit percent, and subtract your target's agility. This will give you your percent chance to hit, so if you have 40 agility and a weapon with a hit rate of 80, and your target has an agility of 50, you have a 70% chance to hit.
Implementing luck would be easy enough in a system like this. Just have the luck attribute improve the outcome of every action by some percentage based on your luck rating. Let's say you have 100 luck, and you're making it so 1/5 of your luck stat is added to everything. Then when you attack it adds 20% (100/5) to your damage, and if you cast poison it lasts 20% longer or does 20% more damage and so forth. Balancing would probably, as mentioned before, involve a fair bit of guess, test, and revise work.