batch rename with id shifting?

Solution 1:

constant=42
for f in *.txt; do    # choose your pattern as appropriate.
    IFS='-.' read id suffix ext <<< "$f"
    newname="$(( 10#$id + constant ))-yyy.$ext"
    echo mv "$f" "$newname"
done

I added "10#" in the arithmetic expression to ensure the number is treated as base-10 even if it begins with a zero.

If this doesn't meet your needs, please provide more requirements in the question.